Linux——目录的相关操作

底下这些就是比较特殊的目录,得要用力的记下来才行:

  • .        代表此层目录
  • ..       代表上一层目录
  • -        代表前一个工作目录
  • ~        代表『目前用户身份』所在的家目录
  • ~account 代表 account 这个用户的家目录(account 是个账号名称)

注意:在所有目录底下都会存在的两个目录:『.』与『..分别代表此层与上层目录的意思。

例题:

请问在 Linux 底下,根目录下有没有上层目录(..)存在? 答:

若使用『 ls -al / 』去查询,可以看到根目录下确实存在 . 与 .. 两个目录,再仔细的查阅, 可发现这两个目录的属性与权限完全一致,这代表根目录的上一层(..)与根目录自己(.)是同一个目录。

底下我们就来谈一谈几个常见的处理目录的指令吧:

  • cd:变换目录
  • pwd:显示当前目录
  • mkdir:建立一个新的目录
  • rmdir:删除一个空的目录

cd (change directory, 变换目录)

我们知道 dmtsai 这个用户的家目录是/home/dmtsai/,而 root 家目录则是/root/,假设我以 root 身份在Linux 系统中,那么简单的说明一下这几个特殊的目录的意义是:

cd Change Directory 的缩写,这是用来变换工作目录的指令。注意,目录名称与 cd 指令之间存在一个空格。 一登入 Linux 系统后,每个账号都会在自己账号的家目录中。那回到上一层目录可以用『 cd .. 』。利用相对路径的写法必须要确认你目前的路径才能正确的去到想要去的目录。例如上表当中最后一个例子,你必须要确认你是在/var/spool/mail 当中,并且知道在/var/spool 当中有个 mqueue 的目录才行啊~ 这样才能使用 cd ../postfix  去到正确的目录说,否则就要直接输入 cd/var/spool/postfix 啰~

其实,我们的提示字符,亦即那个 [root@study ~]#  当中,就已经有指出当前目录了, 刚登入时会到自己的家目录,而家目录还有一个代码,那就是『 ~ 』符号! 例如上面的例子可以发现,使用『 cd~ 』可以回到个人的家目录里头去呢! 另外,针对 cd  的使用方法,如果仅输入 cd 时,代表的就是『 cd ~ 』的意思喔~ 亦即是会回到自己的家目录啦!而那个『 cd - 』比较难以理解,请自行多做几次练习,就会比较明白了。

pwd (显示目前所在的目录)

pwd Print Working Directory 的缩写,是显示目前所在目录的指令如在上个表格最后的目录是/var/mail但提示字符仅显示 mail如果想要知道目前所在的目录可以输入 pwd 即可。此外,由于很多的套件所使用的目录名称都相同,例如 /usr/local/etc 还有/etc,但是通常 Linux 仅列出最后面那一个目录而已,这个时候你就可以使用 pwd 来知道你的所在目录啰!免得搞错目录

 -P  选项可以让我们取得正确的目录名称,而不是以链接文件的路径来显示的。 如果你使用的是 CentOS 7.x 的话,刚刚好/var/mail /var/spool/mail 的连结档, 所以,透过到/var/mail 下达 pwd -P 就能够知道这个选项的意义啰~ ^_^

mkdir (建立新目录)

如果想要建立新的目录的话,那就用 mkdir (make directory) 不过,在预设的情况下所需要的目录得一层一层的建立才行!例如:假如你要建立一个目录为 /home/bird/testing/test1,那么首先必须要有 /home 然后 /home/bird  ,再来 /home/bird/testing 都必须要存在,才可以建立/home/bird/testing/test1 这个目录!假如没有 /home/bird/testing 时,就没有办法建立 test1  的目录啰!

 -p  选项可自动帮你建立多层目录!可直接下达:『 mkdir -p/home/bird/testing/test1 』 则系统会自动帮你将 /home, /home/bird, /home/bird/testing 依序的建立起目录!并且, 如果该目录本来就已经存在时,系统也不会显示错误讯息喔不建议常用-p 这个选项,因为如果打错字那么目录名称就会变的乱七八糟的!

 -m  选项可以来强制给予一个新的目录相关的权限

rmdir (删除『空』的目录)

如果想要删除旧有的目录时就使用 rmdir 如将刚刚建立的 test 删掉使用『 rmdir test 』即可目录需要一层一层的删除才行!而且被删除的目录里面必定不能存在其他的目录或文件!这也是所谓的空的目录(empty directory)的意思啊那如果要将所有目录下的东西都杀掉呢?! 个时候就必须使用『 rm -r test 』不过,还是使用 rmdir 比较不危险!

-p 的选项可以来删除上层的目录

猜你喜欢

转载自blog.csdn.net/qq_36761831/article/details/106812885
今日推荐