用法:
os.spawnl(mode, path, ...)os.spawnle(mode, path, ..., env)os.spawnlp(mode, file, ...)os.spawnlpe(mode, file, ..., env)os.spawnv(mode, path, args)os.spawnve(mode, path, args, env)os.spawnvp(mode, file, args)os.spawnvpe(mode, file, args, env)在新进程中执行程序
path。(请注意,
subprocess模块为生成新进程和检索其结果提供了更强大的工具;使用该模块比使用这些函数更可取。特别检查用子进程模块替换旧函数部分。)如果
mode是P_NOWAIT,该函数返回新进程的进程id;如果mode是P_WAIT,如果进程正常退出,则返回进程的退出代码,或者-signal,其中signal是杀死进程的信号。在 Windows 上,进程 ID 实际上是进程句柄,因此可以与waitpid()函数一起使用。注意VxWorks 当新进程被杀死时,这个函数不会返回
-signal。相反,它会引发 OSError 异常。spawn*函数的 “l” and “v” 变体在 命令行 参数的传递方式上有所不同。如果在编写代码时参数的数量是固定的,那么“l” 变体可能是最容易使用的;单个参数只是成为spawnl*()函数的附加参数。当参数的数量可变时,“v” 变体很好,参数作为args参数在列表或元组中传递。在任何一种情况下,子进程的参数都必须以正在运行的命令的名称开头。在结尾处包含第二个 “p” 的变体(
spawnlp(),spawnlpe(),spawnvp(), 和spawnvpe()) 将使用PATH用于定位程序的环境变量file.当环境被替换时(使用其中一种os.spawnl变体,在下一段中讨论),新环境被用作PATH多变的。其他变种,os.spawnl,spawnle(),spawnv(), 和spawnve(), 不会使用PATH用于定位可执行文件的变量;path必须包含适当的绝对或相对路径。对于
spawnle()、spawnlpe()、spawnve()和spawnvpe()(注意这些都以“e”结尾),env参数必须是一个映射,用于定义新进程的环境变量(它们被用来代替当前进程的环境);spawnl()、spawnlp()、spawnv()和spawnvp()函数都会使新进程继承当前进程的环境。注意env字典中的键和值必须是字符串;无效的键或值将导致函数失败,返回值为127。例如,以下对
spawnlp()和spawnvpe()的调用是等效的:import os os.spawnlp(os.P_WAIT, 'cp', 'cp', 'index.html', '/dev/null') L = ['cp', 'index.html', '/dev/null'] os.spawnvpe(os.P_WAIT, 'cp', L, os.environ)使用参数
mode、path、args、env引发审计事件os.spawn。可用性:Unix、Windows。
spawnlp()、spawnlpe()、spawnvp()和spawnvpe()在 Windows 上不可用。spawnle()和spawnve()在 Windows 上不是线程安全的;我们建议您改用subprocess模块。在 3.6 版中更改:接受一个path-like 对象.
相关用法
- Python os.set_blocking()用法及代码示例
- Python os.setregid()用法及代码示例
- Python os.strerror()用法及代码示例
- Python os.scandir用法及代码示例
- Python os.set_inheritable()用法及代码示例
- Python os.sched_setaffinity()用法及代码示例
- Python os.system()用法及代码示例
- Python os.setreuid()用法及代码示例
- Python os.statvfs()用法及代码示例
- Python os.sched_getaffinity()用法及代码示例
- Python os.symlink()用法及代码示例
- Python os.sync()用法及代码示例
- Python os.stat()用法及代码示例
- Python os.sendfile()用法及代码示例
- Python os.sched_get_priority_max()用法及代码示例
- Python os.sched_get_priority_min()用法及代码示例
- Python os.setgroups()用法及代码示例
- Python os.sysconf()用法及代码示例
- Python os.sched_rr_get_interval()用法及代码示例
- Python os.scandir()用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 os.spawnl。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。
