11.9 删除别名

unalias

天下无不散的宴席,别名也会有不再需要使用的时候。可以使用unalias命令删除别名。

  1. $ ls -d */
  2. by_pool/ libby_pix/ on_floor/
  3. $ alias lsd='ls -d */'
  4. $ lsd
  5. by_pool/ libby_pix/ on_floor/
  6. $ unalias lsd
  7. $ lsd
  8. $

但要注意,正如11.7节所述,这个命令也是永远只对临时的shell 别名有效。前面例子中的lsd别名被删除了。如果对.bash_aliases文件中的别名使用unalias命令,也会删除相应的别名,但前提是一直保持shell登录状态。在退出shell,再登录回来,或是重新加载.bash_aliases时,原来删除的别名依旧存在。

要从.bash_aliases中删除别名,需要编辑这个文件,手工删除包含别名的相应行。如果觉得以后有可能还会使用某个要删除的别名,就在这个别名的前面放一个英磅符号(#),表示注释掉它,如下所示:

  1. # alias lsd='ls -d */'

保存.bash_aliases文件,再用. .bash_aliases命令重新加载它,注释掉的别名就不再起作用了。但如果以后又需要使用它了,打开.bash_aliases文件,删除前面的英磅符号,保存并重新加载这个文件,就又能使用这个别名了。