为 shell 脚本创建别名

为 shell 脚本创建别名

我正在努力通过邪恶酷炫的 Shell 脚本书。我按照本书的代码创建了一个脚本,可以找到这里。我正在尝试为这个脚本创建一个别名,这样我就可以像命令一样从终端调用它。因此,可以从任何目录轻松使用它。

我已将以下代码放在脚本底部,运行它并重新启动终端,但它不起作用。

alias formatdir='source ./shell_scripts/formatdir.sh'

我在网上搜索过,但无法仅使用别名来运行该程序。这是可能的还是我误解了别名的作用?

谢谢

答案1

您的别名的问题是它使用相对目录。因此它将查找相对于工作目录的脚本。因此,要使其正常工作,您需要使用绝对路径定义别名(顺便说一下为什么要使用源代码)。

另一种方法是将包含脚本的目录添加到$PATH变量中,方法是将以下内容放入~/.bashrc(对于 bash):

export PATH=~/shell_scripts:$PATH

这样,您就可以formatdir.sh从所有新终端进行呼叫。此外,您不需要为每个新脚本创建别名。

相关内容