commandwrapper

Software screenshot:
commandwrapper
Software ətraflı:
Version: 0.7
Tarixi Upload: 14 Apr 15
Geliştirici: Yves-Gwenael Bourhis
Lisenziya: Pulsuz
Məşhurluq: 2

Rating: nan/5 (Total Votes: 0)

commandwrapper bir Python yivli obyekt bir shell əmr kesmek üçün bir Python modulu edir.
istifadə:
Siz mövzu aşağıdakı bash əmrləri başlamaq istəyirəm:
[User @ localhost ~] $ ls-l | grep pdf | wc -l
5
burada bunu necə edir:
>>> Ls = WrapCommand (ls-l)
>>> GrepPdf = WrapCommand (grep pdf)
>>> Wc = WrapCommand (wc -l)
>>> Wc.stdin = GrepPdf
>>> GrepPdf.stdin = Ls
>>> Wc.start ()
>>> #Do Stuff
...
>>> Wc.join ()
>>> Wc.results
(5 n ',' ')
'Nəticələrinin əmlak tuple olan (stdoutdata, stderrdata)
Siz həmçinin bu yolu seçə bilərsiniz:
>>> Ls = WrapCommand (ls-l | grep pdf | wc -l, shell = True)
>>> Ls.start ()
>>> #Do Stuff
>>> Ls.join ()
>>> Ls.results [0]
'5 n "
Siz müəyyən etmək lazımdır ki, icra etmək istəyən komanda həqiqətən shell daxil edilir "shell = True. yəni: Windows belə 'dir "və ya" surəti "kimi əmrləri inşa istifadə əgər: http://docs.python.org/library/subprocess.html#subprocess.Popen
Bir mövzu bunu məqsədi yuxarıda əmrləri sizə arada digər vəzifələri yerinə yetirmək istəyirəm ki, bir neçə saat bilər, və zaman. Siz prosesi hələ çalışan kontrol edə bilərsiniz:
>>> Wc.is_alive ()
Saxta
'True hələ çalışan əgər geri olacaq. Siz ləğv () ',' öldürmək () "və ya" özünü danışan var send_signal (siqnal) üsulları var (bu dalana yəni) vaxtından əvvəl onu ləğv etmək. Siz sonuna mövzu üçün gözləmək istəyirsinizsə, "qoşulmaq () metodu istifadə: http://docs.python.org/library/threading.html#threading.Thread.join
Siz Threading olmadan aşağıdakı bash əmrləri başlamaq istəyirəm:
[User @ localhost ~] $ ls-l | grep pdf | wc -l
5
burada bunu necə edir:
>>> Ls = WrapCommand (ls-l)
>>> GrepPdf = WrapCommand (grep pdf)
>>> Wc = WrapCommand (wc -l)
>>> Wc (GrepPdf (Ls))
'5 n "
Məlumatların böyük məbləği hər komanda arasında kəməri prosesləri üçün bunu çəkinin.
əvəzinə, bu yolu edin:
>>> Ls = WrapCommand (ls-l | grep pdf | wc -l, shell = True)
>>> Ls ()
'5 n "
Bu uzun müddət bilər, əgər yerinə yivli metodu üstünlük və eyni zamanda digər vəzifələri yerinə yetirmək istəyirəm.
Siz əmrləri çalışan bir shell daxil edə bilərsiniz:
>>> Ls = WrapCommand (ls, shell = Doğrudur, yürütülebilir = 'C: /windows/System32/WindowsPowerShell/v1.0/powershell.exe)
>>> Çap Ls ()
& Nbsp; Directory: C: İstifadəçilər Yves python_tests
Mode LastWriteTime Length adı
---- ------------- ------ ----
-a --- 27/01/2011 00:14 7006 commandwrapper.py
-a --- 27/01/2011 00:15 7048 commandwrapper.pyc
Http://docs.python.org/reference/compound_stmts.html#grammar-token-with_item: Siz də Context Management (with_item) istifadə edə bilərsiniz
Məsələn:
>>> Ilə WrapCommand (ls-l) Ls kimi:
... GrepPdf kimi WrapCommand ("grep pdf) ilə:
... Wc kimi WrapCommand (wc-l ') ilə:
... Wc.stdin = GrepPdf
... GrepPdf.stdin = Ls
... Wc.start ()
... #Do Stuff
... Wc.join ()
...
>>> Wc.results
(5 n ',' ')
Siz də sadəcə bir subprocess Objet olsun bilər:
>>> Ls = WrapCommand (ls-l)
>>> Lscmd = ls.makeCmd ()
>>>
geri obyekt (yuxarıda nümunə lscmd) standart subprocess.Popen obyekt
WrapOnceCommand WrapCommand kimi eyni, lakin bir subprocess.Popen obyekt dəfə yaradılmış və bütün Ona görə də run Methode üçün olacaq cmd atributu (və ya obyekt) yalnız bir dəfə adlandırmaq olar. Məqsədi bir mövzu komanda başlamaq üçün, və / və asanlıqla bu komanda başlamaq üçün başqa yerlərdən dayandırdı

Bu azad Yeni nədir.

  • dəyişdi müəllif əlaqə info.

versiya 0.4 yeni nədir:

  • burada Warning: http: //docs.python. org / arayış / datamodel.html # object .__ del __
  • Və burada təsvir kimi automaticaly zibil Kolleksiyaçının xaric deyil obyektlərin becasue. Http://docs.python.org/library/gc.html#gc.garbage yaddaş istifadə artmasına səbəb ola bilər hansı

tələblər

  • Python

Geliştirici digər proqram Yves-Gwenael Bourhis

botalert
botalert

15 Apr 15

progbar
progbar

14 Apr 15

Şərh commandwrapper

Şərhlər tapılmadı
Şərh əlavə
Images yandırın!