gpt4 book ai didi

gruntjs - 如何使用 Grunt 生成具有特殊字符的 Windows 命令行?

转载 作者:行者123 更新时间:2023-12-05 05:26:07 28 4
gpt4 key购买 nike

我在 window 上。为了构建我的应用程序,我过去常常进行大量手动文件操作,并在最后一步运行此命令:

"c:\Program Files\Inno Setup 5\ISCC.exe" /dType=server /dBits=32 /dArchAllowed="x86 x64" config.iss

请注意,/d 选项是将一些自定义变量传递给 Inno Setup。

最近情况发生了变化,我们决定使用 Grunt 自动执行任务。所有文件操作都工作正常。但是我无法正确执行最后一步(运行命令行)。

我试过:

grunt.task.registerTask('create-exe', 'create the installer', spawnTask({
cmd: 'c:\\Program Files\\Inno Setup 5\\ISCC.exe',
args: ['/dType=server' , '/dBits=32' ,'/dArchAllowed="x86 x64"', 'config.iss' ]
}));

但是 Inno Setup 并不高兴:

stderr: 'Error on line 38 in config.iss: 
Value of [Setup] section directive "ArchitecturesAllowed" is invalid.',

所以,参数 /dArchAllowed="x86 x64" 有问题(如果我删除它它正在运行。但我需要这个参数。)这是一个讨厌的:它有双重报价,平等和空间!我尝试了很多组合来转义特殊字符,但都没有成功。

有什么想法吗?谢谢!

最佳答案

我在 this help page 上找到了答案.

/d命令行编译器参数值不能用双引号括起来。所以,我只是替换了 '/dArchAllowed="x86 x64"''/dArchAllowed=x86 x64'args属性(property)。

整个 grunt 任务是:

grunt.task.registerTask('create-exe', 'create the installer', spawnTask({
cmd: 'c:\\Program Files\\Inno Setup 5\\ISCC.exe',
args: ['/dType=server' , '/dBits=32' ,'/dArchAllowed=x86 x64', 'config.iss' ]
}));

关于gruntjs - 如何使用 Grunt 生成具有特殊字符的 Windows 命令行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27989684/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com