Уведомления

Группа в Telegram: @pythonsu

#1 Авг. 17, 2011 09:50:01

FroL
От:
Зарегистрирован: 2011-06-21
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

Выполнить команду Linux

Здравствуйте. Мне необходимо выполнить из Питона команду Linux - допустим uname -a, как мне это сделать??? Я читал про execl, но как я понял это запускается на выполнение скрипт с параметрами…



Офлайн

#2 Авг. 17, 2011 09:59:02

regall
От: Киев
Зарегистрирован: 2008-07-17
Сообщения: 1583
Репутация: +  3  -
Профиль   Отправить e-mail  

Выполнить команду Linux

обратитесь к модулю subprocess. Самый простой способ:

>>> import subprocess
>>> subprocess.call('uname -a', shell=True)
Linux krolik-PC 3.0.0-8-generic #11-Ubuntu SMP Fri Aug 12 20:23:58 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux
0
>>>
Для большего контроля и обработки потоков ввода-вывода - читайте доку и смотрите в сторону Popen и PIPE.



Офлайн

#3 Авг. 17, 2011 10:49:31

FroL
От:
Зарегистрирован: 2011-06-21
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

Выполнить команду Linux

Большое спасибо!



Офлайн

#4 Авг. 17, 2011 10:59:57

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Офлайн

#5 Авг. 17, 2011 11:02:47

FroL
От:
Зарегистрирован: 2011-06-21
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

Выполнить команду Linux

В чем ошибка? Пишу так:

subprocess.call("kill -TERM 'cat /var/run/openldap/slapd.pid'", shell=True)
то получается ошибка - arguments must be process or job IDs.



Офлайн

#6 Авг. 17, 2011 14:10:33

svas
От:
Зарегистрирован: 2010-01-27
Сообщения: 239
Репутация: +  9  -
Профиль   Отправить e-mail  

Выполнить команду Linux

Может быть вместо ковычек нужно поставить “`” (эт где буква ё)



Отредактировано (Авг. 17, 2011 14:11:43)

Офлайн

#7 Авг. 17, 2011 16:19:50

FroL
От:
Зарегистрирован: 2011-06-21
Сообщения: 27
Репутация: +  0  -
Профиль   Отправить e-mail  

Выполнить команду Linux

совершенно верно) Я только что это понял и у меня получилось)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version