2011-11-11 9 views
0

私のプロジェクトのbinディレクトリにスクリプトがあり、それをcronから実行したい。両方のスクリプトはPythonで書かれています。他のpythonスクリプトから/ binスクリプトを実行

ターゲットファイル:

App_directory/bin/script_name 

が、私はそれを達成するにはどうすればよいApp_directory/cron/script_name1.py

からいくつかのパラメータでscript_nameスクリプトを実行したいですか?

答えて

1

それは私の作品...

import subprocess 

process = subprocess.Popen('script_name') 
print process.communicate() 
1

試してみてください。

import os 
os.system('/path/to/App_directory/bin/script_name') 

それともscript_nameは実行可能ではない、および/またはshabang(#!/usr/bin/env python)持っていない場合:

import os 
os.system('python /path/to/App_directory/bin/script_name') 
+0

私はshabang番号を持っています!/usr/bin/env Pythonのscript_nameファイル – PythonDev

+0

-1: 'サブプロセス 'を使用してください。これはhttp://docs.python.org/library/subprocess.html#replacing-os-systemをご覧ください。 –

2

subprocessモジュールはos.systemを使用するよりもはるかに優れているが。ただしてください:

import subprocess 
subprocess.call(['/path/to/App_directory/bin/script_name']) 

subprocess.call関数は、スクリプトの戻りコード(終了ステータス)を返します。

関連する問題