Bash 从Shell脚本所在的目录运行Shell脚本

Bash 从Shell脚本所在的目录运行Shell脚本,bash,shell,Bash,Shell,我对shell脚本比较陌生。我正试图创建一个脚本,通过在Finder(Mac)中启动该脚本来启动grunt.js。我希望能够将此脚本放置在任何位置,并通过在脚本所在的文件夹中运行grunt版本使其正常工作 我怎样才能做到这一点?我已经寻找了几个小时试图找到一个解决办法,但由于我缺乏知识,我正在努力 是否有人有一个片段可以CD到脚本存储的目录并运行命令?如果您从该点调用,则当前目录将是脚本存储的目录。您可能会发现它很有用。我查看了这个,但我无法确定如何CD到该目录。我尝试了所有的代码片段,但当我尝

我对shell脚本比较陌生。我正试图创建一个脚本,通过在Finder(Mac)中启动该脚本来启动grunt.js。我希望能够将此脚本放置在任何位置,并通过在脚本所在的文件夹中运行grunt版本使其正常工作

我怎样才能做到这一点?我已经寻找了几个小时试图找到一个解决办法,但由于我缺乏知识,我正在努力


是否有人有一个片段可以CD到脚本存储的目录并运行命令?

如果您从该点调用,则当前目录将是脚本存储的目录。

您可能会发现它很有用。我查看了这个,但我无法确定如何CD到该目录。我尝试了所有的代码片段,但当我尝试“ls”时,它仍然显示用户目录中的文件。如果调用
cd“$(dirname“${BASH_SOURCE[0]}”)”
,则从那时起,当前目录中的脚本将存储在其中。谢谢!现在可以工作了:)我不太懂shell脚本,这正是我所需要的。在这里使用我的解决方案:它处理符号链接、相对路径和绝对路径。在linux和macOsX上测试