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

Linux第二周学习笔记(4)

2018-01-28 21:23 253 查看
Linux第二周学习笔记(4)

2.10环境变量PATH
PATH:只要加入了PATH的路径都可以直接打开命令,可以不去运行命令的绝对路径。这就是环境变量在起作用。
which命令:用于查找并显示给定命令的绝对路径,环境变量PATH中保存了查找命令时需要遍历的目录。也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令。
[root@daizhihong01 ~]# which rmdir
/usr/bin/rmdir
[root@daizhihong01 ~]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
which指令会在环境变量$PATH设置的目录里查找符合条件的命令,也就是说which直接在$PATH设置的目录里直接查找命令的绝对路径比较迅速,如果说你键入的命令在$PATH设置的目录里,就不需要键入这个命令的绝对路径直接键入命令即可。---------------------------------------------------------------------------------------- 实验运行ls及/usr/bin/ls效果是一样的,也就是说ls在$PATH设置的目录里就自己键入ls就可以了[root@daizhihong01 ~]# which lsalias ls='ls --color=auto' /usr/bin/ls[root@daizhihong01 ~]# lsanaconda-ks.cfg[root@daizhihong01 ~]# /usr/bin/lsanaconda-ks.cfg---------------------------------------------------------------------------------------- 复制ls命令到/tmp/目录下新建一个ls1的名称,新建好了以后我们运行“ls1”的绝对路径是可以使用的,如果直接使用ls1就不行了,因为/tmp/目录没有在$PATH设置的目录里所以不能直接键入ls1命令[root@daizhihong01 ~]# which lsalias ls='ls --color=auto' /usr/bin/ls[root@daizhihong01 ~]# cp /usr/bin/ls /tmp/ls1[root@daizhihong01 ~]# /tmp/ls1anaconda-ks.cfg[root@daizhihong01 ~]# ls1-bash: ls1: 未找到命令--------------------------------------------------------------------------------------------- 如果要直接使用ls1那就需要更改环境变量,把/tmp/这个目录加入到$PATH设置的目录,一下的实验结果只要把ls1所在目录/tmp/加入到$PATH设置的目录下就可以直接运行ls1,查看路径就可以直接查看到了[root@daizhihong01 ~]# PATH=$PATH:/tmp/[root@daizhihong01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/tmp/[root@daizhihong01 ~]# ls1anaconda-ks.cfg [root@daizhihong01 ~]# which ls1/tmp/ls1[root@daizhihong01 ~]#以上两个实验就是环境变量的作用以及含义------------------------------------------------------------------------------------------- 当我们在从新打开一个终端的时候,发现ls1又不能使用了,在查一下$PATH设置的目录下/tmp/目录又不存在了,所以我们需要做一个永久性的设置[root@daizhihong01 ~]# ls1-bash: ls1: 未找到命令(在新的终端不能运行)[root@daizhihong01 ~]#----------------------------------------------------------------------------------------- 编辑/profile/文件在最后一行加入PATH=$PATH:/tmp/,在此打开终端就可以看到/tmp/就永久的加到了$PATH设置的目录下,键入ls1就可以直接使用了[root@daizhihong01 ~]# vi /etc/profile(编辑profile文件在最后一行加入PATH=$PATH:/tmp/)[root@daizhihong01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/tmp/:/root/bin[root@daizhihong01 ~]# ls1(再次打开终端这时键入ls1就可直接使用)anaconda-ks.cfg

---------------------------------------------------------------------------------------- 新添加ls1以后不需要的话,是可以删除ls1的[root@daizhihong01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/tmp/:/root/bin[root@daizhihong01~]#PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin [root@daizhihong01 ~]# ls1-bash: ls1: 未找到命令[root@daizhihong01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin这样就直接从$PATH设置目录里面删除了/tmp/目录第二种删除的方法:[root@daizhihong01 ~]# vi /etc/profile编辑profile文件删除最后一行PATH=$PATH:/tmp/就可以了[root@daizhihong01 ~]# echo $PATH/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/tmp/:/root/bin再次查询在$PATH设置目录里面就没有/tmp/目录了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  目录 文件 管理