您的位置:首页 > 运维架构 > Linux

LINUX学习专题——alias,unalias使用,命令DIY

2011-12-07 18:00 429 查看
刚学LINUX的时候,发现切换目录特别麻烦,尤其是文件夹的位置还特别深的时候,敲个指令很麻烦,搞不好还出错了得重输。这个时候alias指令的作用就很突出了。
例如:输入指令:alias class="cd /home/1/...class的实际目录.../6/class"
那么这个时候不管你在哪个文件夹,敲入class,就可以进入class的文件夹了,省去了敲入完整路径的功夫

然而,如果您注销并重新登录,此命令就不起作用了,您需要再次输入 alias 命令。要取消这个步骤,您只需将该命令置于 shell 的配置文件中。
在red hat 5中:
1、进入/etc/profile.d 文件夹
2、vi myshell.sh 键入自己的shell文件
3、文件中输入以下内容: #!/bin/sh
alias class="cd /home/1/...class的实际目录.../6/class"

4、退出文件,改变文件属性:chmod 777 myshell.sh
5、运行一次文件即可 . myshell.sh

您可以使用任何名称创建别名。例如,我总是将 rm -i 命令的别名创建为 rm,从而使它成为交互式命令。
alias rm=’rm -i’
我每次执行 rm 命令后,如果不输入 "y",Linux 就会提示我进行确认,而不会删除该文件,因此不会出现意外删除重要文件的情况。另外,我也以相同的方式使用 mv(以一个新名称另存该文件,防止意外覆盖现有的文件)和 cp(复制该文件)。

以下是一些我喜欢定义的非常有用的别名:
alias bdump='cd $ORACLE_BASE/admin/$ORACLE_SID/bdump'

alias l='ls -d .* --color=tty'

alias ll='ls -l --color=tty'

alias mv='mv -i'

alias oh='cd $ORACLE_HOME'

alias os='echo $ORACLE_SID'

alias rm='rm -i'

alias tns='cd $ORACLE_HOME/network/admin'
要查看 shell 中已定义的别名,使用 alias 即可,无需任何参数。
但这里有一个小问题。我已经定义了一个别名 rm 来执行 rm -i。每次我试图删除一个文件时,该命令都会提示我进行确认。但如果我要删除多个文件并确信无需确认即可删除时,该怎么办?

解决方案很简单:要取消该别名,然后只使用命令,我需要输入两个单引号:
$ ''rm *
注意,rm 命令前面有两个单引号 ('),而不是两个双引号。这将取消别名 rm。另一种方法是使用反斜线 (\):
$ \rm *
要删除一个以前定义的别名,只需使用 unalias 命令:
$ unalias rm
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: