こんにちは私は、特定のサーバーからローカルマシンにファイルをコピーするタスクを与えられました。コマンドラインを使用して手動で実行することもできますが、自動化するスクリプトを作成する必要があります。シェルを使用してそれを行う方法、手動で行ったであろうパスワードを与える方法についての手がかりはありません。私は他の投稿を調べましたが、正確な答えは得られませんでした。
SCPコマンドを使用するよりも良い方法はありますか?
前もって感謝します
これを行うための推奨される+より安全な方法は、sshキーペアを設定することです。
そうは言っても、シェルスクリプトの一部としてパスワードを指定する必要がある場合は、 putty-toolsの一部であるpscpを使用できます。
Ubuntuを使用している場合は、次の方法でインストールできます。
sudo apt-get install putty-tools
(または、システムに応じて同等のパッケージマネージャーを使用します)
使用方法のスクリプト例を次に示しますpscp
。
#!/bin/bash
password=hello_world
login=root
IP=127.0.0.1
src_dir=/var/log
src_file_name=abc.txt
dest_folder=/home/username/temp/
pscp -scp -pw $password $login@$IP:$src_dir/$src_file_name $dest_folder
/var/log/abc.txt
これにより、指定したリモートサーバーからローカルにコピーされます/home/username/temp/