CentOS學習筆記--基本命令--目錄的相關操作

來源:互聯網
上載者:User

標籤:style   blog   ar   color   os   使用   sp   檔案   資料   

Linux基本命令--目錄的相關操作

常見的處理目錄的命令吧:

  • cd:變換目錄
  • pwd:顯示目前的目錄
  • mkdir:建立一個新的目錄
  • rmdir:刪除一個空的目錄
cd (變換目錄)

cd是Change Directory的縮寫,這是用來變換工作目錄的命令。注意,目錄名稱與cd命令之間存在一個空格。

[[email protected] ~]# cd [相對路徑或絕對路徑]# 最重要的就是目錄的絕對路徑與相對路徑,還有一些特殊目錄的符號羅![[email protected] ~]# cd ~vbird# 代表去到 vbird 這個使用者的家目錄,亦即 /home/vbird[[email protected] vbird]# cd ~# 表示回到自己的家目錄,亦即是 /root 這個目錄[[email protected] ~]# cd# 沒有加上任何路徑,也還是代表回到自己家目錄的意思喔![[email protected] ~]# cd ..# 表示去到目前的上一級目錄,亦即是 /root 的上一級目錄的意思;[[email protected] /]# cd -# 表示回到剛剛的那個目錄,也就是 /root 羅~[[email protected] ~]# cd /var/spool/mail# 這個就是絕對路徑的寫法!直接指定要去的完整路徑名稱![[email protected] mail]# cd ../mqueue# 這個是相對路徑的寫法,我們由/var/spool/mail 去到/var/spool/mqueue 就這樣寫!

pwd (顯示目前所在的目錄)

pwd是Print Working Directory的縮寫,也就是顯示目前所在目錄的命令, 例如在上個表格最後的目錄是/var/mail這個目錄,但是提示位元組僅顯示mail, 如果你想要知道目前所在的目錄,可以輸入pwd即可。此外,由於很多的套件所使用的目錄名稱都相同,例如 /usr/local/etc還有/etc,但是通常Linux僅列出最後面那一個目錄而已,這個時候你就可以使用pwd 來知道你的所在目錄羅!免得搞錯目錄,結果...

[[email protected] ~]# pwd [-P]選項與參數:-P  :顯示出確實的路徑,而非使用連結 (link) 路徑。範例:單純顯示出目前的工作目錄:[root@www ~]# pwd/root   <== 顯示出目錄啦~範例:顯示出實際的工作目錄,而非連結檔本身的目錄名而已[root@www ~]# cd /var/mail   <==注意,/var/mail是一個連結檔[[email protected] mail]# pwd/var/mail         <==列出目前的工作目錄[root@www mail]# pwd -P/var/spool/mail   <==怎麼回事?有沒有加 -P 差很多~[root@www mail]# ls -ld /var/maillrwxrwxrwx 1 root root 10 Sep  4 17:54 /var/mail -> spool/mail# 看到這裡應該知道為啥了吧?因為 /var/mail 是連結檔,連結到 /var/spool/mail # 所以,加上 pwd -P 的選項後,會不以連結檔的資料顯示,而是顯示正確的完整路徑啊!

其實有趣的是那個 -P 的選項啦!他可以讓我們取得正確的目錄名稱,而不是以連結檔的路徑來顯示的。

mkdir (建立新目錄)

如果想要建立新的目錄的話,那麼就使用mkdir (make directory)吧!

[[email protected] ~]# mkdir [-mp] 目錄名稱選項與參數:-m :設定檔的許可權喔!直接配置,不需要看預設許可權 (umask) 的臉色~-p :協助你直接將所需要的目錄(包含上一級目錄)遞迴建立起來!範例:請到/tmp底下嘗試建立數個新目錄看看:[root@www ~]# cd /tmp[[email protected] tmp]# mkdir test    <==建立一名為 test 的新目錄[[email protected] tmp]# mkdir test1/test2/test3/test4mkdir: cannot create directory `test1/test2/test3/test4‘: No such file or directory       <== 沒辦法直接建立此目錄啊![root@www tmp]# mkdir -p test1/test2/test3/test4# 加了這個 -p 的選項,可以自行幫你建立多層目錄!範例:建立許可權為rwx--x--x的目錄[root@www tmp]# mkdir -m 711 test2[[email protected] tmp]# ls -ldrwxr-xr-x  3 root  root 4096 Jul 18 12:50 testdrwxr-xr-x  3 root  root 4096 Jul 18 12:53 test1drwx--x--x  2 root  root 4096 Jul 18 12:54 test2# 仔細看上面的許可權部分,如果沒有加上 -m 來強制配置屬性,系統會使用預設屬性。# 那麼你的預設屬性為何?這要透過底下介紹的 umask 才能瞭解喔! ^_^
在預設的情況下, 你所需要的目錄得一層一層的建立才行!例如:假如你要建立一個目錄為 /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 來強制給予一個新的目錄相關的許可權, 例如上表當中,我們給予 -m 711 來給予新的目錄 drwx--x--x 的許可權。不過,如果沒有給予 -m 選項時, 那麼預設的建立目錄許可權又是什麼呢?這個跟 umask 有關,後頭會加以介紹的。

rmdir (刪除『空』的目錄)

如果想要刪除舊有的目錄時,就使用rmdir吧!

[[email protected] ~]# rmdir [-p] 目錄名稱選項與參數:-p :連同上一級『空的』目錄也一起刪除範例:將於mkdir範例中建立的目錄(/tmp底下)刪除掉![root@www tmp]# ls -l   <==看看有多少目錄存在?drwxr-xr-x  3 root  root 4096 Jul 18 12:50 testdrwxr-xr-x  3 root  root 4096 Jul 18 12:53 test1drwx--x--x  2 root  root 4096 Jul 18 12:54 test2[root@www tmp]# rmdir test   <==可直接刪除掉,沒問題[[email protected] tmp]# rmdir test1  <==因為尚有內容,所以無法刪除!rmdir: `test1‘: Directory not empty[root@www tmp]# rmdir -p test1/test2/test3/test4[[email protected] tmp]# ls -l        <==您看看,底下的輸出中test與test1不見了!drwx--x--x  2 root  root 4096 Jul 18 12:54 test2# 瞧!利用 -p 這個選項,立刻就可以將 test1/test2/test3/test4 一次刪除~# 不過要注意的是,這個 rmdir 僅能『刪除空的目錄』喔!
例如將剛剛建立的test殺掉,使用『 rmdir test 』即可!請注意呦!目錄需要一層一層的刪除才行!而且被刪除的目錄裡面必定不能存在其他的目錄或檔案! 這也是所謂的空的目錄(empty directory)的意思啊!那如果要將所有目錄下的東西都殺掉呢?! 這個時候就必須使用『 rm -r test 』羅!不過,還是使用 rmdir 比較不危險!你也可以嘗試以 -p 的選項加入,來刪除上一級的目錄喔!

CentOS學習筆記--基本命令--目錄的相關操作

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.