Windows lua io.popen在路径中使用空格运行程序
我正试图启动这个程序,但一直出错。 我已经尝试在字符串和程序路径周围使用块引号[=[]=],但仍然不起作用Windows lua io.popen在路径中使用空格运行程序,windows,command-line,lua,Windows,Command Line,Lua,我正试图启动这个程序,但一直出错。 我已经尝试在字符串和程序路径周围使用块引号[=[]=],但仍然不起作用 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) 感谢您的帮助:在Windows上,您必须将命令行程序+参数括
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)
感谢您的帮助:在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)
当您在CMD.EXE窗口中通过键盘键入命令时,处理键盘输入的代码会自动添加这些附加引号。
当您使用C函数系统或Lua函数os.execute、io.popen时,必须手动添加额外的引号。
这就是CMD.EXE的工作原理,它的设计充满了不太符合逻辑的决策