从shell命令运行typescript编译器 - 权限被拒绝

时间:2014-07-18 22:37:28

标签: macos bash shell typescript

我使用Parallels因为我更喜欢Mac OS,但我们所做的工作都在Visual Studio中。我们目前有一个build.cmd批处理文件,用于构建我们的打字稿文件。因为我喜欢在可能的时候在Mac上工作,我想我会用bash重写脚本并获得编写shell脚本的经验。我有一个主build.sh命令,用于运行其他shell脚本,如compile-templates.shcompile-source.sh。我现在遇到了compile-source.sh部分的问题。目前,批处理文件如下所示:

echo TypeScript Version:
CALL node_modules\.bin\tsc  -v

typescript编译器包含在我们的解决方案中,因此我们在整个解决方案中都使用相同的编译器。在我的compile-source.sh中,我尝试这样做:

node_modules/.bin/tsc -v 

或者

./node_modules/.bin/tsc -v 

我得到了许可否认。有什么我做错了吗?

1 个答案:

答案 0 :(得分:2)

有几种方法可供尝试。你可以使用bash来运行这样的脚本:

bash node_modules/.bin/tsc -v

或者您可以尝试更改文件的权限:

chmod a+x node_modules/.bin/tsc

这应该可以让你像这样运行脚本:

./node_modules/.bin/tsc -v

但在这种情况下,请确保您的脚本以shebang行开头,告诉系统它是一个bash脚本:

#!/usr/bin/env bash