我正在尝试创建一个简单的Automator Droplet,它将把style.less文件放入其中并在其上运行以下LESS命令: $LESSC {DROPPED_FILE} – 手表 这将监视我已经放入任何更改的文件,然后将自动更新输出的
$LESSC {DROPPED_FILE} – 手表
这将监视我已经放入任何更改的文件,然后将自动更新输出的style.css
仅供参考:我使用LESS来动态编写CSS文件.更多信息是here.
基本的液滴效果很好.
>删除的文件传递给变量;为此目的:{MY_VAR}.
>我在/usr/bin/ruby shell中运行一个shell脚本,如下所示系统(“lessc {MY_VAR} –watch&”)
这很好用但是我希望在退出自动贩卖应用程序时停止–watch.
LESS文档说在命令行shell中按CTRL-C快捷键以中止脚本.
但由于我不在终端窗口内(命令在后台传递),我不知道如何中止脚本.
即使在关闭automator.app之后,仍然会监视style.less文件的更改,并且相应生成的style.css仍在被重写.
所以基本上我需要在退出.app时传递abort命令.
我生成了一个简单的弹出窗口,点击它会在将另一个命令传递给终端shell后关闭应用程序.
这是我所有尝试都不能成功停止脚本的部分.
是否有与按CTRL-C命令相同的命令行功能?
我怎么把这个最好的传递到shell?
p= IO.popen("lessc #{file} --watch") pid= p.pid Process.kill("INT", pid)
在ruby中,执行某些操作至少有3种不同的方式.
`lessc #{file} --watch` # returns stdout after exit system("lessc #{file} --watch") # returns the integer return value after exit Io.popen("lessc #{file} --watch") # returns imidietly an io object, where STDIN and STDOUT can be written and read
您使用了系统(“lessc#{file} –watch&”),它也会返回imidietly但总是返回0.