Nex*_*ius 3 windows lua command-line
我正在尝试启动该程序,但不断收到错误消息。我已经尝试在字符串周围创建块引号 [==[]==] 并在程序路径周围创建“”,但它仍然不起作用。
local test = string.format([==["C:\Program Files (x86)\Audacity\audacity.exe" "F:\Aufnahme %s.%s.%s\ZOOM0001.WAV"]==], tag, monat, jahr)
print(test)
io.popen(test)
Run Code Online (Sandbox Code Playgroud)
如果我从 print(test) 复制命令并在 cmd.exe 中使用它,它就可以工作。
谢谢您的帮助 :)
在 Windows 上,您必须将命令行(程序 + 参数)括在额外的外层引号中。
local test = string.format([==["C:\Program Files (x86)\Audacity\audacity.exe" "F:\Aufnahme %s.%s.%s\ZOOM0001.WAV"]==], tag, monat, jahr)
test = '"'..test..'"'
print(test)
io.popen(test)
Run Code Online (Sandbox Code Playgroud)
当您在 CMD.EXE 窗口中从键盘键入命令时,处理键盘输入的代码会自动添加这些附加引号。
当您使用 C 函数system或 Lua 函数时os.execute,io.popen您必须手动添加额外的引号。
这就是 CMD.EXE 的工作原理(其设计充满了不太合逻辑的决策)。
| 归档时间: |
|
| 查看次数: |
2139 次 |
| 最近记录: |