CTRL-C питонда аяқталады

Қазіргі уақытта менде python арқылы командалардан өтуге тура келетін exe бар. Коды өзі жұмыс істеген кезде жұмыс істеді. Бұл үзіндіді соңғы бағдарламамен біріктірген кезде, ол жұмыс істемеді.

Негізінен, алғашқы екі файлдан кейін shell_start (жүктеу командалары арқылы өтіп жатқан бағдарламадағы -f ) бағдарламасын қолданып жүктеп алсаңыз, python соңғы жүктеуді төменгі shell_forward деп аталатын бағдарламамен бірге. shell_forward бағдарламасымен 3 файлды соңғы жүктеу тіпті жұмыс істемейді.

Мәселен, басты мәселе, сіз шатастырсаңыз, бұл: shell_start бағдарламасы екі команданың және файлдардың жүктелуін аяқтағанда, неге бұл питон қабығы маған ештеңе жазуға рұқсат бермейді ? Бұл кодты орындағаннан кейін оған ештеңе енгізбеуге мүмкіндік беретін пәрмен шақыру терезесі сияқты әрекет етеді.

Сондықтан, мен бұрынғы үрдістен shell_start.exe дегенді тоқтату үшін ctrl-c қажет деп ойлаймын, сондықтан python оны орындағаннан кейін маған рұқсат беруі мүмкін.

Міне код:

import os, time

name = raw_input("Input your name: ")
apn = raw_input("Input apn name: ")
ecid = raw_input("Input ecid name: ")
kernel = raw_input("Input kernel name: ")

os.system('shell_start.exe -f %s'%name)
time.sleep(1)
os.system('shell_start.exe -f %s'%apn)
time.sleep(1)

os.system('shell_forward.exe --imagefile myfile.img --ecid %(x)s --kernel %(y)s '% {"x" : ecid, "y" : kernel})
1

1 жауаптар

Сіз os.system қоңырауларын subprocess .

Шағын процестің модулі жаңа процестерді жасауға мүмкіндік береді   олардың кіріс/шығыс/қателік түтіктері, және олардың қайтару кодын алу. Бұл   модуль бірнеше басқа ескі модульдер мен функцияларды ауыстыруға ниеттеніп отыр,   мысалы:

  os.system
os.spawn *
os.popen *
попен2. *
командалар *.
 
     

Сондай-ақ, қараңыз PEP 324 - PEP субпроцесс модулін

ұсынады
2
қосылды
бұл жұмыс істеді. Мен әлі күнге дейін немен айналысып жүргенімді білмеймін. Hmm ... мүмкін питон ақылдысы? Мен субпроцессті ертерек қолданып көрдім, бірақ әртүрлі ішкі процестерді оқуға көмектесті: P ақпарат үшін рахмет!
қосылды автор user715578, көзі
EDIT: Өзіңіздің ішкі процедуралық ұсынысыңызбен өзгертілген кодтық үзіндіді біріктіріңіз. әлі де келесі бағдарламаны іске қоспайды.
қосылды автор user715578, көзі