giulio di zio
giulio di zio

Reputation: 301

os.execv PermissionError Errno13 Permission denied

I am trying to run the same program recursively but with a different argument. I am doing it like this:

os.execv(file_dir, ['python'] + [sys.argv[0]] + [str(last_line)])
quit()

This is a snippet of a function that i call from my main function. I tried making sure that that file is executable by doing chmod u+x program.py but that did not work. What can the issue be?

Upvotes: 2

Views: 4987

Answers (1)

orestisf
orestisf

Reputation: 1472

os.execv expects the full path to the executable as the first argument, not a "file directory".

Try this: os.execv(sys.executable, ['python'] + [sys.argv[0]] + [str(last_line)])

Example yes implementation by recalling the same executable:

import sys
import os

print('y')
os.execv(sys.executable, ['python'] + [sys.argv[0]])

Upvotes: 2

Related Questions