码迷,mamicode.com
首页 > 其他好文 > 详细

环境变量PATH、which、type、alias

时间:2017-06-15 00:42:26      阅读:222      评论:0      收藏:0      [点我收藏+]

标签:环境变量path、which、type、alias

printenv:打印环境变量

    我们每一次输入一个命令,bash会从环境变量的PATH去寻找,从第一个到最后一个,第一个找到的就执行。

[root@redhat ~]# printenv 

PATH=/usr/lib/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

但是我们每次执行完以后,会在缓存里面缓存这个命令,下一次使用该命令,会直接从缓存里面查找是否有该命令,如果有就执行。

从缓存中寻找命令比在路径中寻找速度要快N倍,该思想会贯穿整个系统调优的过程。缓存为王!


hash:查看缓存中命中使用命令的次数

[root@redhat ~]# hash

hits    command

   1    /sbin/ifconfig

   1    /usr/bin/printenv

   6    /bin/ls

which:寻找bash命令的完整路径

[root@redhat ~]# which ifconfig

/sbin/ifconfig

[root@redhat ~]# which ls

alias ls=‘ls --color=auto‘

        /bin/ls

type:查看一个命令的类型

[root@redhat ~]# type mount

mount is /bin/mount<>外部命令

[root@redhat ~]# type type

type is a shell builtin<>bash内置命令

[root@redhat ~]# type ls

ls is aliased to `ls --color=auto‘<>命令别名


alias:设置指令的别名

语  法:alias[别名]=[指令名称]

[root@redhat ~]# alias la=‘ls -al‘

[root@redhat ~]# la

total 120

dr-xr-x---. 13 root root  4096 Apr 28 19:40 .

dr-xr-xr-x. 24 root root  4096 Apr 28 03:56 ..

-rw-------.  1 root root 16261 Apr 28 22:33 .bash_history

-rw-r--r--.  1 root root    18 May 20  2009 .bash_logout

-rw-r--r--.  1 root root   176 May 20  2009 .bash_profile

unalias:取消命令别名

[root@redhat ~]# unalias la

[root@redhat ~]# la

-bash: la: command not found

参  数 :若不加任何参数,则列出目前所有的别名设置。

[root@redhat ~]# alias

alias cp=‘cp -i‘

alias l.=‘ls -d .* --color=auto‘

alias ll=‘ls -l --color=auto‘

alias ls=‘ls --color=auto‘

alias mv=‘mv -i‘

alias rm=‘rm -i‘

alias which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘


若要每一个用户的每次登录命令别名都生效,需要将配置写入到配置文件

[root@redhat ~]# tail -3 /etc/bashrc 

fi

# vim:ts=4:sw=4

alias la=‘ls -al‘

[root@redhat ~]# la

total 120

dr-xr-x---. 13 root root  4096 Apr 28 19:40 .

dr-xr-xr-x. 24 root root  4096 Jun  6 01:37 ..

-rw-------.  1 root root 15334 Apr 29 03:58 .bash_history

若要给某一个单独的用户配置命令别名,每次登录都生效,需要将配置写入到该用户家目录下的bashrc文件中

[root@redhat ~]# tail ~/.bashrc 


alias rm=‘rm -i‘

alias cp=‘cp -i‘

alias mv=‘mv -i‘

alias la=‘ls -al‘


# Source global definitions

if [ -f /etc/bashrc ]; then

        . /etc/bashrc

fi













本文出自 “liuqistyle” 博客,请务必保留此出处http://liuqistyle.blog.51cto.com/10991928/1936836

环境变量PATH、which、type、alias

标签:环境变量path、which、type、alias

原文地址:http://liuqistyle.blog.51cto.com/10991928/1936836

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!