如何将运行一个bash脚本作为命令?
How to run a bash script as a command?
我有一个 bash 脚本,我想将其作为命令全局 运行。为此,我将脚本移至 /usr/local/bin/somefile.sh
.
现在我仍然需要调用一个名为 somefile.sh
的命令。我想要这个命令的别名(例如我只想用命令 sf
调用脚本)。
我该怎么做?
有不同的方法:
- 如您所述,请使用
alias
、man 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
我有一个 bash 脚本,我想将其作为命令全局 运行。为此,我将脚本移至 /usr/local/bin/somefile.sh
.
现在我仍然需要调用一个名为 somefile.sh
的命令。我想要这个命令的别名(例如我只想用命令 sf
调用脚本)。
我该怎么做?
有不同的方法:
- 如您所述,请使用
alias
、man 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