gpt4 book ai didi

python - 从 Python shell 中执行命令行或 R 脚本文件时出现问题

转载 作者:太空宇宙 更新时间:2023-11-03 17:25:42 24 4
gpt4 key购买 nike

我目前正在使用 optparse 包将 R 脚本文件转换为接受 C 样式长和短标志的命令行可执行文件。该程序在 Ubuntu 上运行。整个应用程序的执行由 Python 脚本控制,该脚本 (1) 首先使用 os.system 调用 script.R 上的 chmod文件如下:

import os 
os.system("chmod +x script.R; export PATH=$PATH:`pwd`")

然后,我再次尝试使用 os.system 从 Python 中执行该程序,如下所示:

program_call = "script.R --arg1 1"
os.system(program_call)

这会返回错误:

sh: 1: script.R: not found
32512

真正令人费解的是,就在一天前它还运行良好,现在却出错了。我正在与其他几个人一起开发这个应用程序,所以我想知道这是否可能是由于我的管理权限的更改引起的。我已经验证所有必需的文件都包含在当前工作目录中。

最佳答案

第一次调用 os.system 时对 PATH 环境变量的更改不会延续到第二次调用,因为它是一个单独的 shell 进程。如果您在 Python 中修改 PATH,它应该可以工作。尝试一下

os.environ['PATH'] += ":" + os.getcwd()
os.system("chmod +x script.R")
program_call = "script.R --arg1 1"
os.system(program_call)

关于python - 从 Python shell 中执行命令行或 R 脚本文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32596440/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com