2012-04-29 3 views
1

Как я из питона сценария эмулировать пользовательские данные, как:Python команда запуска оболочки и эмулировать пользовательский ввод

Say я запустить os.system («черновую INIT: gruntfile»), и я автоматически хочу сценарий питона «введите» некоторые данные, поэтому вместо того, чтобы пользователь вводит данные, которые запрашивает командная оболочка, скрипт python вводит некоторые данные, жестко закодированные в сценарии?

Надеюсь, мой вопрос имеет смысл и что кто-то может помочь. Спасибо заранее, adam

ответ

3

pexpect, вероятно, подойдет вашему счету, если обычный старый subprocess нет.

С pexpect сайта:

Например ::

child = pexpect.spawn('scp foo [email protected]:.') 
child.expect ('Password:') 
child.sendline (mypassword) 
+0

Могу ли я получить выход shellcommand в консоли питона? – Theadamlt

+0

'child.logfile_read = sys.stdout', по-видимому. – AKX