命令解释
我们用ls
这个命令去举例,使用whereis ls
后,可以看到ls
的的完整文件名为:/bin/ls
。你会不会觉的很奇怪,为什么我可以在任何地方执行此命令呢?那是因为环境变量PATH的帮助。
[root@localhost ceshi]# whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz
命令说明
使用root身份列出查询的的路径
[root@localhost ceshi]# echo $PATH
/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/bin:/usr/bin:/sbin:/home/wenjie/bin:/sbin
试问,如果将ls
命令从/bin/ls移动到/root/ls(可用”mv /bin/ls /root
“命令实现),然后你也在/root目录下,请问:
1、你能不能直接输入ls
来执行?
2、若不能,你该如何执行这个命令
3、如果想直接使用ls
执行,我们该如何进行
1、接下来不论你在哪个目录,都没有办法顺利执行ls了,因为/root这个目录并不在PATH指定的目录中,所以你即使在/root目录下,也不能使用ls
这个命令了
2、因为ls
确实存在于/root目录下,所以我们可以使用绝对路径或者相对路径去使用这个命令
[root@localhost ceshi]# /root/ls
test1 test3
3、如果想要让/root在目录均可执行ls
,那么将/root加入到PATH当中即可。
[root@localhost ~]# PATH="$PATH":/root
该命令仅对本次登录有效也就是说,在你重启后你设置的环境变量就失效了。