Windows 带有命令行选项的os.execute()
问题:如何在Lua中使用三个命令行选项执行操作系统命令 我有一个设备连接到我的电脑(Windows 7,USB电缆,典型的公司) 控制设备的软件位于此处Windows 带有命令行选项的os.execute(),windows,lua,Windows,Lua,问题:如何在Lua中使用三个命令行选项执行操作系统命令 我有一个设备连接到我的电脑(Windows 7,USB电缆,典型的公司) 控制设备的软件位于此处 C:\Program Files (x86)\PowerUSB\ 可执行文件(又名“程序”)的名称是 该程序需要三个由空格分隔的1或0的单位数参数 我打开一个命令提示符框,切换到该目录,并测试了所有8个案例。一切都很好 然后我切换到另一个子目录,并尝试此命令 "C:\Program Files (x86)\PowerUSB\pwrusbcmd
C:\Program Files (x86)\PowerUSB\
可执行文件(又名“程序”)的名称是
该程序需要三个由空格分隔的1或0的单位数参数
我打开一个命令提示符框,切换到该目录,并测试了所有8个案例。一切都很好
然后我切换到另一个子目录,并尝试此命令
"C:\Program Files (x86)\PowerUSB\pwrusbcmd" 1 1 1
这也很有效
所以我想执行该命令的Lua命令应该是
os.execute("C:\Program Files (x86)\PowerUSB\pwrusbcmd 1 1 1 ")
或
Lua每次都运行,没有抱怨,但是,设备上没有任何操作
所以我试图改变命令本身的结构,使用“。”
连接整个字符串的两个部分,如下所示
os.execute("C:\\Program Files (x86)\\PowerUSB\\pwrusbcmd".." 1 1 1 ")
仍然没有行动
我在StackOverflow上查看,发现
- 及
- 及
- 及
- 方括号
- 引号(
)“
- 单反斜杠、双反斜杠和三反斜杠
- 前斜杠和s(
)/s
C:\Program Files (x86)\PowerUSB\pwrusbcmd 1 1 1
尝试os.execute([[“C:\ProgramFiles(x86)\PowerUSB\pwrusbcmd”1]])
我相信您的问题是文件路径中的空格
我知道您说您使用了方括号,但我看不出您使用了方括号的组合。这对我很有用。您忘了在命令名周围添加双引号,最简单的方法是使用单引号字符串:
os.execute('"C:\\Program Files (x86)\\PowerUSB\\pwrusbcmd" 1 1 1')
好的,余浩用了一句话来概括整个内容,而你用了两个方括号。这是在或其他地方记录的吗?如果你能指给我看,谢谢。
C:\Program Files (x86)\PowerUSB\pwrusbcmd 1 1 1
os.execute('"C:\\Program Files (x86)\\PowerUSB\\pwrusbcmd" 1 1 1')