我正在努力通过邪恶酷炫的 Shell 脚本书。我按照本书的代码创建了一个脚本,可以找到这里。我正在尝试为这个脚本创建一个别名,这样我就可以像命令一样从终端调用它。因此,可以从任何目录轻松使用它。
我已将以下代码放在脚本底部,运行它并重新启动终端,但它不起作用。
alias formatdir='source ./shell_scripts/formatdir.sh'
我在网上搜索过,但无法仅使用别名来运行该程序。这是可能的还是我误解了别名的作用?
谢谢
答案1
您的别名的问题是它使用相对目录。因此它将查找相对于工作目录的脚本。因此,要使其正常工作,您需要使用绝对路径定义别名(顺便说一下为什么要使用源代码)。
另一种方法是将包含脚本的目录添加到$PATH
变量中,方法是将以下内容放入~/.bashrc
(对于 bash):
export PATH=~/shell_scripts:$PATH
这样,您就可以formatdir.sh
从所有新终端进行呼叫。此外,您不需要为每个新脚本创建别名。