0

いくつかのタスクを実行するために複数の ssh コマンドを使用しています。例:

ssh a-vm "rm -f /home/dir/file1.xlsx"
ssh a-vm "rm -f /home/dir/file2.xml"

scp me@b-vm:/somedir/file1.xlsx .
scp me@b-vm:/somedir/file2.xml .

1) 2 つの ssh コマンドを 1 つに、2 つの scp コマンドを 1 つに結合する方法はありますか? 2) ssh と scp を 1 回ではなく複数回実行するとコストがかかりますか?

どんな助けでも大歓迎です。

4

1 に答える 1

1

あなたはただ行うことができます:

ssh a-vm "rm -f /home/dir/file1.xlsx ; rm -f /home/dir/file2.xml"
scp "me@b-vm:/somedir/{file1.xlsx,file2.xml}" .

各 ssh/scp 呼び出しは、接続時間といくらかの CPU 時間を消費します (数百台のマシンに対して同時に行うと、かなりのコストがかかる可能性がありますが、それ以外の場合はほとんどありません)。

または、ssh に永続的なマスター接続を使用し、それを介して他の接続をトンネルすることもできます。これにより、ネットワーク ラウンドトリップが数回節約されます。http://en.wikibooks.org/wiki/OpenSSH/Cookbook/Multiplexingを参照してください。

于 2013-10-08T16:47:02.950 に答える