我创建了一个别名行为
alias chrome="open -a 'Google Chrome'"
chrome foo.html
然而,当我重新启动终端时,它拒绝工作。
$ chrome foo.html
-bash: chrome: command not found
作为解决方案,我将命令放置到~/.bash_profile
# Add to ~/.bash_profile
# shortcut for chrome
alias chrome="open -a 'Google Chrome'"
再次报告类似的错误
$ chrome foo.html
-bash: chrome: command not found
遇到这样的问题怎么解决呢?
答案1
将别名定义保存在文件中,并确保该文件源自您的~/.bash_profile
、~/.profile
或~/.bashrc
。例如,将以下内容添加到这些文件之一:
[ -e ~/.bash-aliases ] && . ~/.bash-aliases
每当您登录或启动新 shell 时,这都会将保存的别名加载到 shell 中。
以下两个别名很有用:
alias loadalias='source ~/.bash-aliases'
alias savealias='alias >~/.bash-aliases'
输入上面的两个别名,然后运行savealias
。
savealias
顾名思义,它将当前 shell 的别名定义保存到~/.bash-aliases
文件中。需要注意的是,它会完全覆盖现有文件 - 如果任何别名已更改或使用unalias
.
loadalias
.bash-aliases
对于将当前内容加载到当前 shell 中非常有用。典型用法是在一个终端 shell 中创建或修改别名,使用 保存savealias
,然后loadalias
在您可能打开的任何其他终端中运行。
可能有很多方法可以改进别名管理,但这很简单并且很容易在新系统上设置。我从 20 世纪 90 年代初就开始使用它,不需要任何更复杂的东西。
答案2
您的别名应该输入.profile
.