scpまたはsshを介してスクリプトの出力をリモートサーバーにリダイレクトする

scpまたはsshを介してスクリプトの出力をリモートサーバーにリダイレクトする

SSHを介してすべてのサーバーに接続し、各実行の出力を表示するスクリプトがあります。この出力を/var/tmp/filename_output.txtonにリダイレクトできますかserver1

このスクリプトはserver1すべてのサーバーで実行されます。以下は、スクリプトを実行して出力を保存するために実行したいコマンドです。

ssh server1
./script.sh > /var/tmp/filename_output.txt

ssh server2
./script.sh >> server1:/var/tmp/filename_output.txt

ssh server3
./script.sh >> server1:/var/tmp/filename_output.txt

答え1

編集する:

私はいくつかのテストをしてきましたが、このようなコマンドを実行するとローカル出力が表示されます。

ssh yourserver < ./your_script.sh > your_script.stdout

編集終了


私の視点では、2つのオプションがあります。

オプション1

各サーバーでscript.shを実行し、コマンド出力をリモートサーバーの/var/tmp/filename_output.txtに書き込んだ後

scp /var/tmp/filename_output.txt myserver:/prefered_location/server_name.log
rm /var/tmp/filename_output.txt

オプション2

サーバーからNFSをエクスポートし、ネットワーク上のすべてのサーバーからインポートし、マスターサーバーを指す他のすべてのサーバーにローカルFSを置き、コマンド出力をFS内のファイルに入れてNFSをポイントして問題を解決します。

NFS をエクスポートしてクライアントシステムにインポートする方法についての指示が必要な場合は、お知らせください。

関連情報