我的 You-Get 动作收到用户报错反馈,说通过动作下载一张图片不成功,但他自己通过命令行下载是可以的。
经我测试,发现的确是这样。奇怪的是,同样的命令,我通过 PowerShell 测试正常下载,但是 CMD 却不行。
you-get -o "d:\Downloads\" https://stallman.org/rms.jpg
CMD 是拼接命令行,如果要运行的命令里有引号,就会拼接出不合法的命令。
用bat或cmd脚本类型,这时候命令是写入到文件里执行,不会造成不合法。
bat或cmd脚本类型,即不显示控制台窗口,也不会等待进程运行完毕,即使我勾选等待进程运行。
我用了bat或cmd脚本类型,动作没有按预期进行,给我的感觉是跳过运行脚本这个步骤,就给运行后面的步骤。
测试没问题
输入 you-get 的命令不凑效
总结原因:bat脚本的文件编码类型应该使用系统默认。使用UTF8编码可能会不被正常执行。