【问题标题】:where all these aliases are stored?所有这些别名都存储在哪里?
【发布时间】:2016-05-17 07:13:12
【问题描述】:

在 iterm 中运行时在我的 macbook 上

alias

我可以看到一堆别名,大量用于 git,而且大部分都可以,但我想更改一些。

我尝试向~/.bash_profile添加一些:

alias gcm='git commit -m'
alias c='clear'

但它对alias的输出没有影响。

是的,我重新加载了 iterm。

【问题讨论】:

  • 试试source ~/.bash_profile。现在,它有效吗?
  • @John_West 不幸的是还没有
  • 你的别名语法是什么?
  • @John_West 编辑了问题
  • 很有趣,我的手册页也是这么说的。找到它们如何加载的一种方法是运行bash -xl(减去 ex ell)。这将为登录 shell(即 ell)提供启动文件(即 x)的跟踪。

标签: macos bash iterm


【解决方案1】:

您是否退出并重新登录?我认为~/.bash_profile 是正确的文件,所以它应该可以工作。

之前已经回答了如何重新加载 bash 别名:

How to reload .bash_profile from the command line?

【讨论】:

  • 在我写的问题中,我已经重新加载了 iterm
【解决方案2】:

“所有这些别名都存储在哪里?”

~/.bashrc - this is a script invoked 当您启动公共终端(iterm 等)时,因为您调用了 non-login shell。登录页面和非登录页面的区别在这里很好地解释了:https://unix.stackexchange.com/a/46856/58326

从另一个脚本调用的每个脚本也可以包含别名。

所以,如果您想覆盖在其他脚本中创建的别名,我建议您将别名添加到 ~/.bashrc 的末尾。

您可以在任意位置添加自定义别名(例如,als.sh)并仅在需要时加载它们:source als.sh

【讨论】:

  • 非常感谢一个体面的解释!晚上在家的时候我会测试一下然后回复你,现在绝对upvote,再次感谢!
  • 一点也不!同时,我现在修复了答案:) 之前有一个错误
【解决方案3】:

你可以使用这个来搜索别名是否已经存在:

alias | grep keyword

如果存在,您可以使用删除已经存在的

unalias alias_name

然后添加您的新别名。完成!

【讨论】:

    猜你喜欢
    • 2012-05-11
    • 2016-07-19
    • 1970-01-01
    • 2011-02-18
    • 2018-10-02
    • 1970-01-01
    • 1970-01-01
    • 2011-11-20
    • 2011-09-15
    相关资源
    最近更新 更多