为 bash 脚本创建别名

rye*_*ayo 14 bash alias

所以我尝试过试验并创建了一个aliasin .bashrc. 但是,当我测试命令时,我得到:

[rkahil@netmon3 ~]$ menu
-bash: menu: command not found
Run Code Online (Sandbox Code Playgroud)

这是我在.bashrc文件中的内容:

# Source global definitions

if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions
alias menu='./menuScript.sh'
alias vi='vim'
Run Code Online (Sandbox Code Playgroud)

有趣的是,当我创建别名时vi,它起作用了。但菜单没有。我在 UnixStackExchange 上查找了以前的帖子并尝试关注其他帖子,但无济于事。还有其他人有什么建议吗?

Con*_*n7e 13

您应该尝试使用alias menu='bash ./menuScript.sh'. 我目前不在 Linux 机器上,所以无法自己测试,但它应该可以工作。当您调用别名时,它不知道如何处理路径,因此您必须bash在开头包含。

进行更改后重置终端确实有帮助。


Mic*_*ant 8

当你做

alias menu='./menuScript.sh'
Run Code Online (Sandbox Code Playgroud)

您创建了一个别名,上面写着“那个文件”,但没有说明实际如何处理它。

但是,如果你这样做

alias menu='source ./menuScript.sh'
Run Code Online (Sandbox Code Playgroud)

或者

alias menu='. ./menuScript.sh'
Run Code Online (Sandbox Code Playgroud)

你是说运行那个文件。


小智 6

您是否记得在进行更改后获取 ~/.bashrc 文件的源?因为更改在您的 .bashrc 文件中生效后重新启动您的计算机或只是采购文件。

  • 这种类型的帖子似乎更适合发表评论。 (2认同)
  • @HalosGhost 你怎么看?这也是我首先想到的,它会导致这个 (2认同)