SSHを使用して、次のbashスクリプトでホストのコマンドを実行しています。
ssh pi@rasp 'rm /home/pi/webcam/rmtest.txt' || \
{ echo "remove failed" > $log; }
ホストにエラーがない場合は、期待どおりに動作します。この場合、クライアントにリダイレクトされます。
rm: cannot remove ‘/home/pi/webcam/rmtest.txt’: No such file or directory
そのエラーメッセージをクライアントのファイルにリダイレクトしたいのですが、方法がわかりません。
私は配置しようとしました:
>$ログ2>&1
他の場所では動作しますが、何も動作しません。
変数 $log:
pi@raspsky:~/webcam $ echo $log
/home/pi/webcam/condtest.log
ベストアンサー1
ssh pi@rasp 'rm /home/pi/webcam/rmtest.txt' 2> $log
sshはリモートのstdin、stdout、およびstderr記述子をローカル記述子に接続するため、必要に応じてローカルstderrをリダイレクトするだけです。