0

我正在尝试编译一些较少的文件,但除非我在该目录中一次指定一个文件,否则我会收到“读取文件时出错”。我在其中有一个名为 /less 和 .less 文件的目录。请假设我从正确的目录执行了命令:

休息/少——编译

休息 *.less --compile

休息 /less/*.less --compile

休息 ./less/*.less --compile

唯一有效的是:

休息 main.less --compile

而且我有超过 20 个文件要编译,所以这并不理想。如果这有什么不同,我正在使用常规旧命令提示符的 Windows 机器上。

4

1 回答 1

0

这里的问题是 Windows 的通配符扩展与 Unix 机器上的不同。以下链接描述了两者之间的区别。

基本上,在 Unix 上,命令被shellrecess *.less扩展为etc.,然后该列表作为 args 传递给 RECESS。在 Windows 的命令提示符下,文字字符串“*.less”作为 arg 传递,并且RECESS预计会处理扩展通配符。recess file1.less file2.less file3.less

除了向 RECESS 的开发人员提交功能请求外,在命令提示符下调用 RECESS 时无法直接使用通配符。

不过有一个解决方法。

可以@import在 LESS 中使用指定编译前需要从同一目录导入的文件。@import因此,您可以为文件夹中的所有其他文件创建一个文件,并recess --compile使用该文件作为路径参数进行调用。

例如,查看Twitter 的 bootstrap.less 文件。使用它,您可以调用:

recess --compile bootstrap.less > ./bootstrap.css

所有这些文件都将被编译成一个名为 bootstrap.css 的 CSS 文件。

于 2013-10-24T20:19:26.027 回答