2017-02-23 8 views
1

私はbashの初心者です。 bash sciptの出力をファイルにリダイレクトしようとしています。 1行の出力を除くすべてがファイルにリダイレクトされます。 この行はファイルを作成していますが、何も書きません。 bashスクリプトはstdoutをファイルにリダイレクトしません

(cmdpid=$BASHPID; (sleep 3; sudo kill $cmdpid) & exec sudo hcitool lescan) > file 

この

はどちらか動作していない:

(cmdpid=$BASHPID; (sleep 3; sudo kill $cmdpid) & exec sudo hcitool lescan > file) 

私はbashスクリプト上で表示されますラインの出力を実行していますが、私は、ファイルにリダイレクトするときに文句を言いません。 私を助けてください。

+0

の最後に出力を追加したい場合はたぶん、あなたはまた、標準エラー出力をリダイレクトする必要がありますか? '> file 2>&1' – Pawamoy

+0

私はこれをすでにテストしましたが、ファイルは空です。出力をパイプしないでスクリプトを開始すると、 "LE Scan ..."のようなメッセージが表示されます。 stdout、stderrをファイルにパイプすると、空のままになります。 – Felix

+1

なぜ "exec"を使用していますか?それがあなたの問題に関係しているかどうかは確かではありませんが、必要とは思われません。スクリプトを削除することをお勧めします。 – Fred

答えて

0

リダイレクトすると、標準出力が1>fileを使用してみたり、ファイル1>>file

関連する問題