试图做一个永久的别名 – UNIX

我想在unix中build立一个永久的别名alias homedir='cd /export/home/Files/myName' )。

我正在尝试在〜/ .bashrc文件中添加该命令,但在$ HOME目录中找不到该文件。 唯一的bash文件就是.bash_history,请帮忙。

我甚至做了一个ls -a ,仍然没有find它在我的$ HOME目录。

我建议不要把你的别名直接放在〜/ .profile(这是在评论中建议的)。 〜/ .profile文件不是特定于bash的。

你应该把你的别名放在〜/ .bashrc中。

为什么?

  1. .bashrc保证特定于bash(或至少它的任何未来变体)
  2. 如果你把所有东西都设置正确,你的所有shell都可以遵循相似的约定。 所以你可以有.bashrc,.zshrc,.tcshrc,.kshrc等

    • 如果你像我一样,喜欢玩各种不同的贝壳,你会发现这非常帮助

如何设置它

将下面的代码放在〜/ .profile中。

 # if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi 

这将确保〜/ .bashrc运行当且仅当你使用bash。 所以最终涉及〜/ .profile; 但是你仍然可以从bash特定的文件中得到所有别名(以及其他特定于bash的命令)。 你需要把这个添加到.profile的原因在这里解释: 什么是bash的不同脚本之间的区别? 。

然后添加你的别名和其他命令到〜/ .bashrc。 如果〜/ .bashrc尚不存在,只需使用touch ~/.bashrcvi ~/.bashrc

请记住,只要修改它就可以重新应用〜/ .bashrc。 否则,您将看不到更改。 为此,请运行以下代码:

 source ~/.bashrc 

我找到了解决方案。 我添加了〜/ .profile的别名并重启了会话。 有效。