别名'存储在Ubuntu 10.04中

时间:2012-02-12 00:59:46

标签: linux ubuntu alias

我正在使用一个我不知道信息存储位置的命令。

alias nup='ps ax | grep "nginx"'

此别名保存在哪里?

6 个答案:

答案 0 :(得分:7)

这取决于您的环境和配置。 对于 bash ,我通常会将其放在主目录中的 .bashrc 文件中。

答案 1 :(得分:3)

在ubuntu中,别名存储在.bashrc文件中。

如果您在终端中输入alias update_linux='sudo apt-get update',则会暂时创建别名。它一直有效,直到你关闭终端。

要永久添加别名,您可以修改~/.bashrc并为其添加别名:

gedit ~/.bashrc

并在末尾添加别名

alias update_linux='sudo apt-get update'

不要忘记通过运行:

来刷新.bashrc配置

source ~/.bashrc

有关创建别名的更多详细信息,请参阅以下博客:Codebucket

答案 2 :(得分:2)

我正在使用Ubuntu 14.04,您可以将别名直接放在.bashrc中,但您也可以在~/.bash_aliases中创建一个文件,该文件将单独保存别名并自动加载它们。

默认情况下,.bash_aliases文件不存在。您需要创建它,但首先要确保在与.bashrc文件相同的目录中创建它

要查找.bashrc,您可以使用:

sudo find / -name .bashrc -print

我的输出是:

/root/.bashrc /home/ddropik/.bashrc /etc/skel/.bashrc

OddityOverseerranendra所述,我可能对我的主目录中的那个感兴趣,即/home/ddropik/.bashrc。所以我导航到我的主目录cd ~/

现在使用touch .bash_aliases创建.bash_aliases文件,然后使用nano .bash_aliases进行编辑。添加你想要的任何别名。

在您打开新的终端会话或重新加载您的个人资料--bash login

之前,您无法使用新添加的别名

答案 3 :(得分:1)

它通常位于主目录中的文件中,例如.aliases或其他内容。

答案 4 :(得分:1)

尝试

grep alias ~/.* 
grep alias /etc/*

找到大多数别名。在/ etc / default,/ etc / environment中,根据你的发行版(我读:ubuntu)/ version,其他/ etc / -subdirs中可能会有更多。

答案 5 :(得分:0)

这里的问题是:

if I have an alias named 'shortcut,' how do I find out what file is defining that as an alias?

最好和最用户友好的方法是:

sudo grep -roI alias\ nameOfAliasHere=\' /etc/ /home/yourUserName/
  • -r 告诉 grep 读取目录中的所有内容,并递归遍历目录,没有它,grep 会抱怨你想要做什么。
  • -o 表示仅打印与您的字符串匹配的行部分
  • -I 禁止结果中的二进制文件,因为它们不会帮助您找出别名的位置
  • 反斜杠表示“将下一个字符视为字符串的一部分,而不是您解释它的正常方式”

该命令将遍历主文件夹和 /etc 中的所有内容,包括子目录


如果您想从最可能的位置开始,只需做您的主目录:

sudo grep -roI alias\ nameOfAliasHere=\' /home/yourUserName/

要搜索可能被定义或提及的任何地方,这很方便,如下:

sudo grep -oIr alias\ ls=\' / --exclude-dir={sys,proc,srv,media,tmp,sbin,bin,boot,mnt,recovery,run,backups,var}

例如,很多事情都喜欢使 'ls' 命令更漂亮。看看下面的比较。我还在踢球的开头加入了“时间”:

results

您可以看到在您的主目录和 /etc 之外有几个地方具有该别名,并且它也在 .alias 和 .bashrc 中定义。就我个人而言,我喜欢将我的自定义别名放在一个名为 .alias 的文件中,然后告诉所有内容来获取它。如果您在尝试定义别名时遇到问题,这很方便。您在 ~/Downloads 和 .cache 目录中看到的内容不会影响您的活动别名。与 /usr 目录相同。

/etc/skel 中的文件用于为新用户创建主目录,因此那里的任何内容都不会影响您。不过,如果 /etc/profile 中出现了某些内容,那将是。

你还可以看到 root 用户有一个 ls 的别名。