[Comm] python eject script

Евгений Косенко =?iso-8859-1?q?eugine=5Fkosenko_=CE=C1_ukr=2Enet?=
Сб Окт 25 02:00:25 MSD 2003


В сообщении от 24 Октябрь 2003 10:19 John A. Gladkikh написал(a):
> Hi All.
> Вопрос знатокам питона.
> Такой маленький скрипт.
> На открытие работает, на закрытие нет

Аналогично.

> В файл все пишет правильно, наверное дело в вызове eject?
> Как исправить, чтобы закрывало?

Если нет религиозных предубеждений, то лучше использовать модуль commands

> ------------------------------------
> #!/usr/bin/python
>
> import os

import commands

>
> name = "/home/vigio/tmp/cdd.tmp"
>
> try:
>    f = open(name, "r")
>    s = f.readline()
>    f.close()
> except:
>    s = "closed"
>
> if s == "closed" :
>     new_s = "open"
>     cmdparam = ''
> else:
>     new_s = "closed"
>     cmdparam = '-t'
>
> f = open(name, "w")
> f.write(new_s)
> f.close()
>
> # retcode = os.spawnlp(os.P_WAIT, 'eject', cmdparam)

retcode = commands.getstatusoutput("eject %s" % cmdparam)[0]

>
> #
> print new_s,cmdparam,retcode
> #
> -----------------------------------------------
> Спасибо.

А если разбираться серьезно, то придется попотеть... Лично я считаю, что 
прямое указание команды операционной системы намного прозрачнее -- точно так 
же работают sh, perl, ruby. Не вижу смысла нарушать традицию...

> P.S.
> Видел в рассылке скрипт для sh, хочется на питоне.

А зачем?


Подробная информация о списке рассылки community