-2

私はプロンプトで実行されるこのコマンドを持っています:

echo "python setHeater.py" | at 16:30

Pythonプログラムからそれを実行するにはどうすればよいですか?

私のプログラムでは、日付を作成し、それを文字列に連結します。

newtime = createnewtime()
commandToExecute = 'echo "python setHeater.py" | at ' + newtime 
#and then here the code to actually run the command in the command environment
4

2 に答える 2

1

subprocess基本的に、次のようなライブラリを使用してコマンドを実行できます。

from subprocess import Popen, PIPE

newtime = createnewtime()
p1 = Popen(["echo ", "'python setHeater.py'"], stdout=PIPE)
p2 = Popen(["at", newtime ], stdin=p1.stdout, stdout=PIPE)
output = p2.communicate()[0]
于 2013-03-25T15:38:55.290 に答える
1

OSライブラリを使用できます。

import os

newtime = createnewtime()
command = 'echo "python setHeater.py" | at ' + newtime
os.system(command)

ただし、このコマンドを実行しようとしている場合は、「echo」を使用する必要はありません。単に:

import os

newtime = createnewtime()
command = "python setHeater.py | at " + newtime
os.system(command)
于 2013-03-25T15:53:01.520 に答える