2016-05-13 7 views
2

heredoc形式でスクリプトをバックグラウンドで実行する方法があるかどうかを知りたいですか?heredoc形式のスクリプトをバックグラウンドで実行しますか?

#!/bin/bash 

python <<EOF 
import time 
time.sleep(2) 
print "AAA" 
EOF # placing "&" here doesn't work 

echo "Hello" 

私は、ファイルに書き込み、その後、python foo.py &のようにそれを実行することができます知っているが、それは質問のポイントではありません。

答えて

3

あなたの&を一番上に貼ってください。これはまったく直感的ではありませんが、どちらもヘレドックではありません。

#!/bin/bash 

python <<EOF & 
import time 
time.sleep(2) 
print "AAA" 
EOF 

echo "Hello" 

あなたは、あまりにもそこにリダイレクトすることができます。

#!/bin/bash 

python <<EOF > /some/file & 
import time 
time.sleep(2) 
print "AAA" 
EOF 

echo "Hello" 
+0

素晴らしい、おかげであなたはちょうどここに文書が実際にはない直後に、次の行まで開始されないことを心に留めておく必要があり – Vor

+2

'<< EOF'。 – chepner

関連する問題