我目前正在尝试编写一个批处理文件来在Windows中构建我的项目。该项目是用Stylus构建的。 Stylus安装了node.js和-g标志
每当我使用stylus命令运行我的批处理文件时,都不会执行手写笔调用之后的命令。就像手写笔调用的完成强制窗口关闭一样,即使单独运行命令也不会关闭窗口。
这是我的剧本:
set sourcedir="d:\Projects\Travnet\Web\source"
set destdir="d:\Projects\Travnet\Web\package"
::clean up the lackage dir
rmdir /q /s %destdir%
md %destdir%
:: Duplicate all images for the package
xcopy %sourcedir%\assets\img\* %destdir%\img\ /y
::compress the stylus css
::-c is the source, -o is the output dir
if not exist %destdir%\css md %destdir%\css
stylus -c %sourcedir%\assets\styl -o %destdir%\css
::type %destdir%\css\* > %destdir%\css\styles.css
copy /b %destdir%\css\* %destdir%\css\styles.css
pause
正在执行复制命令和暂停命令。如果我注释掉手写笔命令,它们就会被执行。手写笔命令正在输出文件,所以我很茫然。
有没有人知道为什么手写笔执行会强制我的脚本结束执行?
答案 0 :(得分:2)
stylus
很可能是批处理文件。您必须使用call
调用其他批处理文件,否则控件将不会返回到调用批处理:
call stylus -c ...