私は10個のUnixサーバーを持っていて、1つずつログインして4〜5行のコードを実行し、出力を保存して終了しようとしています。
例:10コピー:
最初はxyzサーバーで
サーバー1へのログイン - >行4〜5の実行 - > xyzサーバーへの出力の送信 - >終了
サーバー2へのログイン - >行4〜5の実行 - > xyzサーバーへの出力の送信 - >終了
....
サーバー10へのログイン - >行4〜5の実行 - > xyzサーバーへの出力の送信 - >終了
最後にファイルがXYZサーバに出力されます。
たとえば、時間を1時間に巻き戻す、新しい時間を出力として使用し、新しい時間を次の形式でxyzサーバー上のファイルに保存するなど、いくつかの時間コマンドを実行したいと思います。
Server Name New Time
=========== =========
Server1 Date and Time
Server2 Date and Time
ベストアンサー1
元の質問には多くの説明がなかったので、次のように推測します。
次のように、SSH 経由でリモート呼び出しを実行して、リモートサーバーでコマンドを実行できます。
result=`ssh -t server1.mydomain.com "commands;separated;by;semicolons --with-args" > log-on-xyz.log 2>&1` echo "$result"
リスト内の各サーバーを繰り返してこれを行います。最後に、ログ出力を画面に表示して削除できます。
コマンドをセミコロンで区切って「接続」することで、パラメーターを使用できます。また、リモート呼び出しでローカル変数をパラメータとして使用できます。
編集:これはBASHスクリプトですが、少し変更すると他の言語でも機能します。