2017-06-19 18 views
0

私はこの単純な問題を理解する助けを得ることができるかどうかは疑問だったので、Bashスクリプトには新しくなっています。 私は現在、私は次の引数パイソンxxx.py file1.csv99 99 700 900 0.005 9 --use_cuda Y10とbashで自動化したいコマンドラインで実行するPythonのファイルを持っていますここで &>nameooutputfile.txt &(太字で何かが引数としてbashスクリプトに渡され、非太字コマンドは静的されます)複数の引数を持つBashスクリプト

は、私がこれまで試したものです:

if python xxx.py $1 $2 $3 $4 $5 $6 $7 --use_cuda $8 $9 &> ${10} &; then 
    echo "xxx.py completed succesfully!" 
else 
    echo "Error: xxx.py failed!" 
fi 
すべてのヘルプは高く評価され

line 45: syntax error near unexpected token `;' 
ine 45: `if python xxx.py $1 $2 $3 $4 $5 $6 $7 --use_cuda $8 $9 &> ${10} &; then' 

:私は、スクリプトを実行したとき

しかし、私は次のエラーを取得しています。前もって感謝します!

+0

';&'で '&;'を置き換えます。 – Cyrus

+0

@Cyrus速い応答をありがとう!私が最後に "&"を持っているのは、ログオフ後もコマンドをバックグラウンドで実行したいからです。 – user3235624

+0

nvm @chorobaがその質問に答えました。ありがとう! – user3235624

答えて

1

&;の両方が有効なコマンド区切り文字ですが、1つに組み合わせることはできません。

&

はただの仕事がフォークすることができたかどうかをチェックします ifでその戻り値をチェックし、バックグラウンドでコマンドを実行するために使用されるので、あなたはおそらく ;を使用したいです。

+0

完璧!どうもありがとう! – user3235624

関連する問題