我正在开发一个JSFL脚本,它将导出WAV文件并使用lame.exe进行编码成MP3,通过FLfile.runCommandLine。我无法确定如何正确转义命令行中的空格以使其正常工作。
var command_line = '"C:\pathWithSpaces in pathname\lame.exe" -option1 -option2 "C:\different pathWithSpaces\targetfile.wav" "C:\different pathWithSpaces\targetfile.mp3"' ;
FLfile.runCommandLine (command_line);
命令行窗口中的结果:
'C:\pathWithSpaces' 不被认为是一个内部或外部命令、可操作的程序或批处理文件。
我已经尝试用 '%20' 和尖角号空格'^ '替换空格,但都失败了。当手动剪切并粘贴到命令窗口时,变量 command_line 被验证可用,只有在从 JSFL 脚本中运行时,空格才成为问题。
(简单地从环境中删除任何路径中的空格不是一个选项。command_line 变量是动态生成的,必须能够处理空格才能对其他人有用。)