このssh呼び出しをLinuxの "tstz"という名前のシェルスクリプトに置き、linux "at"コマンドで呼び出して、後で実行するようにスケジュールします。コマンドでLinux/Unixを使ってSSHを実行する
TSTZスクリプト:コマンドの構文で
#! /bin/ksh
/usr/bin/ssh -tt <remote windows server> pmcmds ${fl} ${wf} </dev/null>/tmp/test1.log 2>&1
:予想通り
-f TSTZでは現在、+ 1分
sshのコールがリモートコマンドを実行しますが、ssh接続は、直前に閉じリモートコマンドが完了しました。私は、リモートコマンドが完了するまで開いたままにして、終了ステータスを持つtstzスクリプトに制御を戻すための接続が必要です。
これは私が/tmp/test1.logで取得エラーです:
のtcgetattr:デバイス ^ [[2JConnection閉じdc01nj2dwifdv02.nj.core.himするための不適切なioctlの^ M
注:atコマンドを使用してtstzをスケジュールするとき、-ttを使用しないと、sshコマンドはリモートコマンド "pmcmds $ {fl} $ {wf}"を実行しません。私はこれがターミナルが必要なためだと信じています。しかし、私はtstzをsshコマンドラインで-ttなしでフォアグラウンドのLinuxコマンドプロンプトから実行することができ、それは期待どおりに実行されます。
ご協力いただければ幸いです。ありがとう!
コード/データの前に4つの空白を付けます。 [edit-help](http://stackoverflow.com/editing-help)を見てください。 – Cyrus
/usr/bin/ssh -tt <リモートWindowsサーバー> pmcmds $ {fl} $ {wf} < /dev/null > /tmp/test1.log 2>&1 – Gary
リダイレクトはローカルシェルによって処理されています。あなたのコマンドで必要なものをリモートシェルで実行するために必要なものを1つまたはdbl引用するので、リモートシェルへのコマンドとみなされます。がんばろう。 – shellter