我想从R.
我可以用以下方式启动软件(图形盘棱镜):
system2("C:/Program Files (x86)/GraphPad/Prism 7/prism.exe")我期望它打开我的棱镜文件,就好像我在双击它或从cmd运行它一样,但它没有:
system2("H:/Graphs/Shell/Templates/NASH4_Standard.pzfx")我正在收到这样的信息:
警告消息:运行命令'H:/Graphs/Shell/Templates/NASH4_Standard.pzfx‘的状态为127
我看到这不是一个错误,而是一个警告。我是不是无意中“炮轰”了背景文件?我怎么才能确保它像窗户一样弹出来?
状态127是针对here的,但用于启动软件,而不是用它打开文档。
发布于 2017-02-03 21:11:51
在Windows环境中,您需要调用命令行解释器,比如CMD提示符或PowerShell。此外,任何有空格的文件路径都需要用双引号括在R中字符串文本的引号中( .exe不是特定文件的情况下)。
使用system()在一个字符串中发送整个命令:
system('cmd /c "H:/Graphs/Shell/Templates/NASH4_Standard.pzfx"')
# POWER SHELL REQUIRES MORE QUOTE ESCAPING (ONLY ONE PAIR W/O SPACES)
system('powershell & """H:/Graphs/Shell/Templates/NASH4_Standard.pzfx"""')对于system2(),使用args参数:
# FILES
system2('cmd', args=c('/c', '"H:/Graphs/Shell/Templates/NASH4_Standard.pzfx"'))
system2('powershell', args=c(' & """H:/Graphs/Shell/Templates/NASH4_Standard.pzfx"""'))
# EXECUTABLES
system2('cmd', args=c('/c', '"C:/Program Files (x86)/GraphPad/Prism 7/prism.exe"'))
system2('powershell', args=c(' & """C:/Program Files (x86)/GraphPad/Prism 7/prism.exe"""'))发布于 2017-02-03 20:57:34
shell.exec("C:/Program Files (x86)/GraphPad/Prism 7/prism.exe")
对你有用吗?
ps。和shell.exec("MyWorkbook.xls")打开默认程序的文件
https://stackoverflow.com/questions/42030471
复制相似问题