複数のサーバー上のファイルをローカルシステムにコピーする方法は?

複数のサーバー上のファイルをローカルシステムにコピーする方法は?

app00、app01などのサーバーに複数のアプリケーションがデプロイされています。 grepとcutを実行するには、これらすべてのサーバーの単一のログファイルをローカルのMacにコピーする必要があります。

このファイルを表示するためにcsshXを使用しましたが、scpに対応するプログラムが見つかりませんでした。私は主に2つが欲しい。

  1. n台のサーバーに接続してファイルをコピーできます
  2. ログファイルのサーバーホスト名の前にプレフィックスを追加すると、ローカル命名の競合を防ぐことができます。

どうすればいいですか?

ベストアンサー1

これは小さなスクリプトでは些細なことです。たとえば、

for server in app0 app1 app4 app5 appN; do
    scp user@$server:/path/to/log/file /local/path/to/"$server"_file
done

上記の方法では、各サーバーから順番にファイルをコピーして名前を付けますSERVERNAME_file。したがって、ファイルは次のようにapp0なります。app0_fileもちろん、名前は好きなように変更できます。

おすすめ記事