Python Glossary Русский

all Python 3osfunction

os.execvp

os — running programs (exec)

Like execv, but the program is looked up in PATH.

Syntax

os.execvp(...)

The handiest variant for "run a program in my place": PATH lookup and a list of arguments whose first item is the program name. Wrappers and launchers that prepare an environment and hand over control are built this way. Code after a successful call never runs.

Examples

import os
args = ['ls', '-l']   # аргументы списком (v), имя программы — без пути
print(len(os.get_exec_path()) > 0)   # → True — именно в этих каталогах (PATH) execvp ищет программу
print(os.execvp('нет-такой-программы', ['нет-такой-программы']))   # → FileNotFoundError: ни в одном каталоге PATH не нашлось
import os
# os.execvp('ls', args)   # только Unix: найдёт /bin/ls в PATH и заменит текущий процесс — строки ниже не выполнятся

See also

Common errors

Open in the full glossarydocs.python.orgReport an inaccuracy