我正在尝试使用Windows命令行自动执行某个进程。这种自动化的一部分是编译从.less到.css的几个文件。我已经使用npm成功安装了node.js和LESS编译器。
我有一个命令提示符脚本(.cmd),其中包含以下命令:
echo Compiling CSS...
pause
lessc -x C:\path_to_file\file1.less > ..\output\file1.css
pause
lessc -x C:\path_to_file\file2.less > ..\output\file2.css
pause
第一个lessc命令在没有任何编译错误的情况下工作,并按预期将file1.css保存到输出文件夹。
然后命令行退出,甚至没有按下第二个暂停命令,请求用户输入。
我不明白为什么命令提示符退出。有没有人有任何想法?
感谢。
答案 0 :(得分:2)
正如七阶段最大声明所述,Windows中的命令行脚本较少,并且不会返回原始脚本。
解决方法是使用call
。该剧本最终成为:
echo Compiling CSS...
pause
call lessc -x C:\path_to_file\file1.less ..\output\file1.css
pause
call lessc -x C:\path_to_file\file2.less ..\output\file2.css
pause
所有功劳归于七阶段 - 最大,我只想澄清正确的方法,因为它可能在将来帮助其他人。