如何将运行一个bash脚本作为命令?

How to run a bash script as a command?

我有一个 bash 脚本,我想将其作为命令全局 运行。为此,我将脚本移至 /usr/local/bin/somefile.sh.

现在我仍然需要调用一个名为 somefile.sh 的命令。我想要这个命令的别名(例如我只想用命令 sf 调用脚本)。

我该怎么做?

有不同的方法:

  • 如您所述,请使用 aliasman alias 获取详细信息
  • 为您的真实脚本创建一个名为 sf 的软件 link
  • 重命名您的脚本

并补充@Kent 的回答:

alias sf='/usr/local/bin/somefile.sh' 使用别名

ln -s somefile.sh /usr/local/bin/sf 使用软 link

mv /usr/local/bin/somefile.sh /usr/local/bin/sf 使用重命名

打开位于 ~/.bashrc.bashrc 文件。 .bashrc 每次登录系统时都会读取文件。将以下行添加到文件末尾。

alias sf='/usr/local/bin/somefile.sh'

然后重新登录或运行source .bashrc

如果您使用的是 GNU 系统,则可以使用 "alternatives" 系统:

dir=/usr/local/bin
sudo update-alternatives --install $dir/sf somefile $dir/somefile.sh 10

这将创建 2 个符号链接:

/usr/local/bin/sf -> /etc/alternatives/somefile
/etc/alternatives/somefile -> /usr/local/bin/somefile.sh