2


次のようなbashシェルがあります。

server_home=`pwd`
kill `cat $server_home'/AppService.pid'`
if [ -f $server_home/AppService.pid ]; then
    rm $server_home/AppService.pid
fi
export MONO_PATH=$server_home"/bin:"$server_home"/Function"
mono-service2 -l:$server_home/AppService.pid $server_home/bin/AppService.exe

mono サービスを開始できます。そして今、もう少し作業を行う必要があるため、次のような python シェルを作成します。

import os
server_home=os.getcwd()
tmpPID = server_home +'/AppService.pid'
tmpSS = server_home + '/bin/AppService.exe'
os.popen("kill `cat '" + tmpPID +"'`").close()
if os.path.isfile(tmpPID):
    print "start delete pid"
    os.remove(tmpPID)
else:
    print "cant find the " + tmpPID

print  'mono-service2 -l:'+tmpPID+' '+tmpSS
output = os.popen('mono-service2 -l:'+tmpPID+' '+tmpSS)
print output.read()
output.close()

AppService.PID ファイルは削除されますが、サービスは開始されません。コードの何が問題になっていますか? 私を助けてください。どうもありがとうございました。

4

1 に答える 1

1

の使用os.popen非推奨ですサブプロセスを使用してみましたか?

subprocess.call(["mono-service2", "-l:" + tmpPID, tmpSS])
于 2012-12-03T09:44:06.220 に答える