次のコマンドを使用してリモートホスト上にフォルダを作成するkorn88シェルスクリプトがあります。
ssh $user@$host "mkdir -p $somedir" 2>> $Log
その後、これを使用してループ内のファイルの束を転送します
scp -o keepalive=yes $somedir/$file $user@$host:$somedir
スクリプトが終了した後、最初のコマンドで接続が開いたままになるかどうか疑問に思いますか?
新しい-十分なバージョンのsshには、単一の物理接続を介して複数の仮想接続を多重化する機能があります。したがって、接続の多重化を有効にして、長時間実行されるsshコマンドをバックグラウンドで起動すると、後続の接続でその接続が再利用され、起動時間が大幅に短縮されます。接続の多重化については、マンページを参照してください。ssh_config
関連するオプションはとです。ControlMaster
ControlPath
しかし、William Pursellが示唆しているように、rsync
それがオプションである場合、おそらくより簡単で高速です。