2012-02-10 1 views
0

みんな!私は簡単な質問があります。 この行は何をしますか?Unixのラインを理解する

trap "exec 1>&6 6>&- ; cat $LOGFILE" 0 

これまでのところ、私は、「6、(この変数は以前に宣言されていないので、私は6は、この同じラインで作成した変数であると仮定)私は6に標準出力を移動していますことを理解し> & - 'は私が実際には得られないものです。cat $ LOGFILEは変数LOGFILEの内容を示しています。また、最後の0は私のプログラムの実行終了時に 'exec 1> & 6 6> & - を実行することを意味しています。 cat $ LOGFILE 'を終了します。

事前にお世話になりました!

+0

はhttp://tldp.orgを見る閉じるための手段この種の構文の詳細については、/LDP/abs/html/x17784.htmlを参照してください。 –

答えて

1
  1. trap <command> 0するシェル
  2. exec 1>&6の終了時に<command>を実行する手段
  3. exec 6>&-をFD6するSTDOUT(FD1)をリダイレクトすることを意味FD6
+0

ありがとう!ちょうどもう一つ:fd6はその行の前に宣言されていません...それはfd6がこの同じ行に即座に作成されることを意味しますか? – Nacho321

関連する問題