如何使用Coffeescript和shellJS编写可执行的shell脚本?

时间:2013-10-02 03:49:21

标签: javascript bash shell coffeescript shebang

我使用NPM安装了coffeescript和shellJS。我有一个测试脚本shtest.coffee:

#!/usr/local/bin/coffee
require 'shelljs/global'
echo 'hello'
exit 1

使用咖啡运行脚本可以正常工作:

$ coffee shtest.coffee
hello

或者使用shjs:

$ shjs shtest.coffee
hello

但不是直接:

$ chmod u+x shtest.coffee
$ ./shtest.coffee
./shtest.coffee: line 2: require: command not found
hello

将shebang更改为指向/usr/local/bin/js无济于事。

看起来该脚本是作为bash脚本运行的。我究竟做错了什么? OS X Snow Leopard。

1 个答案:

答案 0 :(得分:5)

尝试使用

#!/usr/bin/env coffee

作为你的shebang线。这至少对我有用,虽然我不确定为什么到底(除了它与ENV有什么关系)