现在的位置: 首页 > 综合 > 正文

linux aliases (别名)

2013年12月07日 ⁄ 综合 ⁄ 共 1494字 ⁄ 字号 评论关闭

 

linux系统下给命令指定别名alias命令用法: 

在linux系统中如果命令太长又不符合用户的习惯,那么我们可以为它指定一个别名。虽然可以为命令建立“链接”解决长文件名的问题,但对于带命 令行参数的命令,链接就无能为力了。而指定别名则可以解决此类所有问题。只要举一些例子就可以了: 
alias l='ls -l' ;用 l 代替 ls -l 命令(Xenix 下就有类似的 l 命令) 
alias cd..='cd ..' ;用 cd.. 代替 cd .. 命令(对在 DOS 下使用惯了 cd.. 的人帮助很大) 
alias md='mkdir' ;用 md 代替 mkdir 命令(对在 DOS 下…) 
alias c:='mount /dev/hda1 /mnt/c & cd /mnt/c' ;用 c: 命令代替命令序列:安装 DOS 分区,再进入。 
通常我们可以将以上命令放到自己的home目录下的.bashrc文件中,在使用source .bashrc 命令.即可使用.

全局设置在/etc/profile和/etc/csh.cshrc

===========================================

还有一个使工作变得轻松的方法是使用命令别名。命令别名通常是其他命令的缩写,用来减少键盘输入。
命令格式为:
alias [alias-name=’original-command’]
其 中,alias-name是用户给命令取的别名,original-command是原来的命令和参数。需要注意的是,由于Bash是以空格或者回车来识 别原来的命令的,所以如果不使用引号就可能导致Bash只截取第一个字,从而出现错误。如果alias命令后面不使用任何参数,则显示当前正在使用的被别 名化的命令及其别名。为命令取的别名在该次登录期间始终有效。如果用户需要别名在每次登录时都有效,那么就将alias命令写到初始化脚 本文件中。
[例]如果经常要键入如下的命令,最好为它建立一个别名来减少工作量。
$ cd /usr/X11/lib/X11
假如为这个长命令建立一个名为goconfig的别名,在Bash提示符下键入如下命令:
$ alias goconfig=’cd /usr/X11/lib/X11’
现在,除非您退出Bash,键入goconfig将和原来的长命令有同样的作用。如果想取消别名,可以使用下面的命令:
$ unalias goconfig
这是一些很多人认为有用的别名,可以把它们写入初始化脚本文件中来提高工作效率:
alias ll=’ls –l’
alias log=’logout’
alias ls=’ls –F’
如果您是一名DOS用户并且习惯了DOS命令,可以用下面的别名定义使Linux表现得象DOS一样:
alias dir=’ls’
alias copy=’cp’
alias rename=’mv’
alias md=’mkdir’
alias rd=’rmdir’
注意: 在定义别名时,等号两边不能有空格,否则shell不能决定您需要做什么。仅在命令中包含空格或特殊字符时才需要引号。如果键入不带任何参数的alias 命令,将显示所有已定义的别名。

 

 

 

但这里有一个小问题。我已经定义了一个别名 rm 来执行 rm -i。每次我试图删除一个文件时,该命令都会提示我进行确认。但如果我要删除多个文件并确信无需确认即可删除时,该怎么办?

解决方案很简单:要取消该别名,然后只使用命令,我需要输入两个单引号:

$ ''rm *

注意,rm 命令前面有两个单引号 ('),而不是两个双引号。这将取消别名 rm。另一种方法是使用反斜线 (/):

$ /rm *

要删除一个以前定义的别名,只需使用 unalias 命令:

$ unalias rm

 

抱歉!评论已关闭.