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

LINUX的alias,unalias使用

2018年05月07日 ⁄ 综合 ⁄ 共 1109字 ⁄ 字号 评论关闭

1、刚学LINUX的时候,发现切换目录特别麻烦,尤其是文件夹的位置还特别深的时候,敲个指令很麻烦,搞不好还出错了得重输。这个时候alias指令的作用就很突出了。

例如:输入指令:alias class="cd /home/1/...class的实际目录.../6/class"

那么这个时候不管你在哪个文件夹,敲入class,就可以进入class的文件夹了,省去了敲入完整路径的功夫

 

2、然而,如果您注销并重新登录,此命令就不起作用了,您需要再次输入 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

 

3、您可以使用任何名称创建别名。例如,我总是将 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'

5、要查看 shell 中已定义的别名,使用 alias 即可,无需任何参数。

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

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

$ ''rm *

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

$ \rm *

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

$ unalias rm

抱歉!评论已关闭.