如何自动将LESS编译到服务器上的CSS中?

rom*_*nsh 10 css linux events iowait less

我的朋友设计师正在手动编译他的LESS文件并用Coda(远程站点)上传它花费了大量宝贵的时间.他问我:

是否可以自动检测Linux服务器上的文件更改并立即编译?

rom*_*nsh 11

我制作了一个脚本并发布了详细信息:

  • 易于设计师使用
  • 保存文件后立即执行LESS编译器,而不消耗服务器资源
  • 任何能够远程编辑的编辑器都可以使用这个解决方案 - Code,Sublime Text,Textmate

首先,您需要在服务器上安装"npm",方法是在控制台中输入:

sudo apt-get install npm inotify-tools
sudo npm install -g less
sudo nano /usr/local/bin/lesscwatch
Run Code Online (Sandbox Code Playgroud)

将以下内容粘贴到文件中:

#!/bin/bash
# Detect changes in .less file and automatically compile into .css
[ "$2" ] || { echo "Specify both .less and .css files"; exit 1; }
inotifywait . -m -e close_write | while read x op f; do.
    if [ "$f" == "$1" ]; then.
        lessc $f > $2 && echo "`date`: COMPILED";.
    fi
done
Run Code Online (Sandbox Code Playgroud)

保存,退出,然后执行:

sudo chmod +x /usr/local/bin/lesscwatch
Run Code Online (Sandbox Code Playgroud)

你们都完成了.下次需要使用LESS文件时,需要打开终端(Coda有内置),转到文件夹(使用cd)并执行:

lesscwatch main.less main.css
Run Code Online (Sandbox Code Playgroud)

它将输出有关成功编译或错误的信息.请享用.