Portál AbcLinuxu, 14. května 2025 00:07
#!/usr/bin/env python import subprocess ConnectString="/usr/sbin/pppd /dev/ttyACM0 user ufon password ufon updetach defaultroute usepeerdns connect \"/usr/sbin/chat ABORT BUSY ABORT 'NO CARRIER' '' ATZ OK ATD#777 CONNECT\"" proc = subprocess.call(ConnectString, shell=True)#, stdout=subprocess.PIPE)Když napíšu řetězec zde uložený v ConnectString do bashe, vše funguje. Z pythonu to nefunguje(ani když daný scriptík ještě neskončil). Proč? A jak to udělat, aby takto spuštěný proces byl potom nezávislý na původním pythonovském scriptíku, ze kterého byl spuštěn? Dík. R
Řešení dotazu:
http://docs.python.org/library/subprocess.html#subprocess.callnavíc
Note Do not use stdout=PIPE or stderr=PIPE with this function. As the pipes are not being read in the current process, the child process may block if it generates enough output to a pipe to fill up the OS pipe buffer.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.