2011-09-15 8 views
0

最近、私は多くの同様のコマンドを実行しています。作成する方法はありVariable assignment '2>&1' invalid (no "=")bash出力のリダイレクトの省略形を作成するにはどうすればよいですか?

python foo.py some args 2>&1 | tee foo.log 
python bar.py otherarg 2>&1 | tee bar.log 

タイピングを節約するために、私は

python foo.py some args $tee foo.log 

が、私はexport tee='2>&1 | tee'を言うとき、これは私にこのエラーを与えるような2>&1 | teeの省略形が欲しいですこの種の出力リダイレクションの便利な省略形(必ずしも上記と同じではない)でしょうか?

+1

問題はパイプで、I/Oリダイレクトとパラメータ拡張の前にシェルが設定します。その後、$ teeが展開されると、遅すぎます。ベストはジェイの下で述べたようなスクリプトでしょう。 –

答えて

1

理由でXXXという名前のシェル・スクリプト・ファイルは作成しない:

のpython $ 1.py $ * 2> & 1 |ティーの$ 1.log

またはそのような何か...(引数にスペースを持っている場合は、おそらくなど、少なくとも1つの引数があることを確認したい、「* $」を必要とする場合があります)

あなたがしなければなりませんタイプ: XXX foo some args XXX bar otherargs

関連する問題