をコマンドの出力をリダイレクトすることはできませんターミナル。は、私は次のコマンドを実行しようとしています(postfixの状態のために)ファイルに
私はミックスに以下を追加してみました、とさえ出力をリダイレクトする前にエコーへの配管が、何も
postfix status 2>&1 > tmp
他のコマンドも効果を持っているotのようでなかったが何の問題も動作しません。
をコマンドの出力をリダイレクトすることはできませんターミナル。は、私は次のコマンドを実行しようとしています(postfixの状態のために)ファイルに
私はミックスに以下を追加してみました、とさえ出力をリダイレクトする前にエコーへの配管が、何も
postfix status 2>&1 > tmp
他のコマンドも効果を持っているotのようでなかったが何の問題も動作しません。
回答を削除したSOユーザーのおかげで、今は感謝していません。私は正しい軌道に乗りました。私はここで答えを見つけました:posfixの応答をキャッチできるようにしたい人のための
http://irbs.net/internet/postfix/0211/2756.html
ので、私は次のメソッドを使用していました。
スクリプトを作成すると、出力が希望の場所に移動します。私はこのようにしました:
#!/bin/sh
cat <<EOF | expect 2>&1
set timeout -1
spawn postfix status
expect eof
EOF
私はスクリプト(例えばscript.sh)を実行し、そこからパイプ/リダイレクトすることができました。すなわちscript.sh> file.txt
私はPHPのためにこれを必要としました。私はexecを使用して実際に応答を得ることができました。
stdoutの代わりに端末に書き込むようです。私は 'エコー'にパイプを理解していない、あなたは '猫'にパイピングを意味ですか?
あなたはいつも 'script'コマンドを使うことができます。これは、端末に表示されているすべてのものを記録します。あなたは 'script'を実行してからコマンドを実行し、終了します。
script -c 'postfix status' -q tmp
少し拡大できますか?それが立てば、ゴリマーの答えには良いコメントになるでしょうが、彼はそれを説明しています。 –
スクリプト-c 'logrotate -d -f /etc/logrotate.conf' -q /tmp/log.txt – zzapper