【发布时间】:2014-05-28 15:52:03
【问题描述】:
问题:如何在 Lua 中使用三个命令行选项执行 OS 命令?
我有一台设备连接到我的电脑。 (Windows 7、USB 电缆、典型企业)
控制设备的软件位于此处...
C:\Program Files (x86)\PowerUSB\
可执行文件的名称(又名“Program”)是...
pwrusbcmd
该程序需要三个单个数字参数,1 或 0,用空格分隔
我打开了一个命令提示框,切换到那个目录,测试了所有 8 种情况。一切正常。
然后我切换到另一个子目录,并尝试了这个命令......
"C:\Program Files (x86)\PowerUSB\pwrusbcmd" 1 1 1
这也很好。
所以我认为执行该命令的 Lua 命令可以是......
os.execute("C:\Program Files (x86)\PowerUSB\pwrusbcmd 1 1 1 ")
或
os.execute("C:\\Program Files (x86)\\PowerUSB\\pwrusbcmd 1 1 1")
Lua 运行每个,没有任何抱怨,但是, 设备上没有发生任何操作。
所以我尝试改变命令本身的结构,用".." 连接整个字符串的两个部分,像这样......
os.execute("C:\\Program Files (x86)\\PowerUSB\\pwrusbcmd".." 1 1 1 ")
还是没有动作。
我在 StackOverflow 上看了这里,发现
我对每个写这些问题的人表示同情。很像用户 ID thatthing,我也试过..
- 方括号
- 引号 (
") - 单反斜杠、双反斜杠和三反斜杠
- 前斜线和 s (
/s)
到目前为止,我找不到一个有效的语法结构。
我可以自己编造的唯一“修复”(如果有的话就误称)是编写八个不同的 MS-DOS bat 文件,并为它们指定唯一的名称。这使机器实际上无法使用。
如何让 Lua 执行这个命令???
C:\Program Files (x86)\PowerUSB\pwrusbcmd 1 1 1
【问题讨论】: