目录与路径

一.相对路径与绝对路径

  •  绝对路径:路径的写法一定由根目录 / 写起,例如: /usr/share/doc 这个目录。
  •  相对路径:路径的写法不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 下面时,可以写成: “cd ../man”这就是相对路径的写法相对路径意指相对于目前工作目录的路径

二.目录的相关操作

 1.cd:变换目录

  • cd ~ 可以回到个人的主文件夹里头去如果仅输入 cd 时,代表的就是“ cd ~ ”的意思
  • cd ..是返回上一层目录
  • cd -是返回到上一次的工作目录

 2.pwd:显示目前的目录

 pwdPrint Working Directory的缩写,也就是显示目前所在目录的指令,加 -P 选项,可以让我们取得正确的目录名称,而不是以链接文件的路径来显示。

 3.mkdir:创建一个新的目录

  •  加上 -p 这个选项,你可以直接下达:“ mkdir -p /home/bird/testing/test1 ” 则系统会自动的帮你将 /home, /home/bird, /home/bird/testing 依序的创建起目录!并且, 如果该目录本来就已经存在时,系统也不会显示错误讯息.不建议常用-p这个选项,因为担心如果你打错字,那么目录名称就会变的乱七八糟的.
  • 我们可以利用 -m 来强制给予一个新的目录相关的权限, 例如上表当中,我们给予 -m 711 来给予新的目录 drwx--x--x 的权限。

4. rmdir:删除一个空的目录

 如果想要删除旧有的目录时,就使用rmdir,而且被删除的目录里面必定不能存在其他的目录或文件! 这也是所谓的空的目录(empty directory)的意思.那如果要将所有目录下的东西都杀掉呢? 这个时候就必须使用“ rm -r test ”!不过,还是使用 rmdir 比较不危险,你也可以尝试以 -p 的选项加入,来删除上层的目录.

 三.关于可执行文件路径的变量: $PATH

      查阅文件属性的指令ls完整文件名为:/bin/ls(这是绝对路径), 那你会不会觉得很奇怪:“为什么我可以在任何地方执行/bin/ls这个指令呢? ” 为什么我在任何目录下输入 ls 就一定可以显示出一些讯息而不会说找不到该 /bin/ls 指令呢? 这是因为环境变量 PATH 的帮助所致。

    当我们在执行一个指令的时候,举例来说“ls”好了,系统会依照PATH的设置去每个PATH定义的目录下搜寻文件名为ls的可可执行文件, 如果在PATH定义的目录中含有多个文件名为ls的可可执行文件,那么先搜寻到的同名指令先被执行。

 

 PATH(一定是大写)这个变量的内容是由一堆目录所组成的,每个目录中间用冒号(:)来隔开, 每个目录是有“顺序”之分的。

 例题1:假设你是root,如果你将ls由/bin/ls移动成为/root/ls(可用“mv /bin/ls /root”指令达成),然后你自己本身也在/root目录下, 请问(1)你能不能直接输入ls来执行?(2)若不能,你该如何执行ls这个指令?(3)若要直接输入ls即可执行,又该如何进行?

 

 接下来不论你在那个目录下面输入任何与ls相关的指令,都没有办法顺利的执行ls了!也就是说,你不能直接输入ls来执行,因为/root这个目录并不在PATH指定的目录中, 所以,即使你在/root目录下,也不能够搜寻到ls这个指令。因为这个ls确实存在于/root下面,并不是被删除了!所以我们可以通过使用绝对路径或者是相对路径直接指定这个可执行文件文件名, 用/root/ls这个指令:

 将/root加入到可执行文件搜寻路径PATH

 最后还是要将ls搬回/bin下面,不然系统会挂点的:mv /root/ls /bin

 例题2:如果我有两个ls指令在不同的目录中,例如/usr/bin/ls与/bin/ls那么当我下达 ls 的时候,哪个ls会被执行?

 答:找出 ${PATH} 里面哪个目录先被查询,则那个目录下的指令就会被先执行,/usr/bin/ls在前先执行。

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yingjiyu/p/11278080.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值