У меня есть большая программа (150 строк или около того), но это, кажется, единственная проблема, которая у меня есть. Мне удалось сократить проблему и превратить ее в небольшую программу. По сути, он разветвляет программу и пытается выполнить команду linux (я запускаю это с помощью Ubuntu). Я получаю следующий вывод:
Current instruction is bin/ls
Current instruction is bin/ls
Child PID is 984
Traceback (most recent call last):
File "./Test.py", line 17 in <module>
makeFork("bin/ls")
File "./Test.py", line 12, in makeFork
os.execl(instruction, instruction)
File "/usr/lib/python2.7/os.py", line 314, in execl
execv(file, args)
OSError: [Errno2] No such file or directory
Parent PID is 4
Ниже приведен код для программы
import os
from time import sleep
os.system("clear")
def makeFork(instruction):
PID = os.fork() #Creating a fork for the child process
sleep(2)
print("Current instruction is " + instruction)
if PID == 0:
print("\nChild PID is " + format(os.getpid()))
os.execl(instruction, instruction)
sleep(2)
print("\nParent PID is " + format(os.getppid()))
makeFork("bin/ls")
Куда я иду не так?