1. 程式人生 > >第二周第一節、相對路徑和絕對路徑及cd、mkdir/rmdir、rm命令

第二周第一節、相對路徑和絕對路徑及cd、mkdir/rmdir、rm命令

2018-03-26

相對路徑和絕對路徑

絕對路徑和相對路徑
除了需要特別註意的FHS目錄配置外,在文件名部分我們也要特別註意喔!因為根據檔名寫法的不同,也可將所謂的路徑(path)定義為絕對路徑(absolute)和相對路徑(relative)。 這兩種文件名/路徑的寫法依據是這樣的:
a、絕對路徑:由根目錄(/)開始寫起的文件名或目錄名稱, 例如 /home/dmtsai/.bashrc;
b、相對路徑:相對於目前路徑的文件名寫法。 例如 ./home/dmtsai 或 ../../home/dmtsai/ 等等。反正開頭不是 / 就屬於相對路徑的寫法。
而你必項要了解,相對路徑是以『你當前所在路徑的相對位置』來表示的。舉例來說,你目前在 /home 這個目錄下, 如果想要進入 /var/log 這個目錄時,可以怎麽寫

  1. cd /var/log (absolute)
  2. cd ../var/log (relative)
    因為你在 /home 底下,所以要回到上一層 (../) 之後,才能繼續往 /var 來移動的! 特別註意這兩個特
    殊的目錄:
    a、 . :代表當前的目錄,也可以使用 ./ 來表示;
    b、 .. :代表上一層目錄,也可以 ../ 來代表。
    這個 . 和 .. 目錄概念是很重要的,你常常會看到 cd .. 或 ./command 之類的指令下達方式, 就是代表
    上一層與目前所在目錄的工作狀態喔!很重要的吶!
    ##########
    cd命令用來切換工作目錄至dirname。 其中dirName表示法可為絕對路徑或相對路徑。若目錄名稱省略,則變換至使用者的home directory(也就是剛login時所在的目錄)。另外,~也表示為home directory的意思,.則是表示目前所在的目錄,..則表示目前目錄位置的上一層目錄。

語法
cd (選項) (參數)
選項
-p 如果要切換到的目標目錄是一個符號連接,直接切換到符號連接指向的目標目錄
-L 如果要切換的目標目錄是一個符號的連接,直接切換到字符連接名代表的目錄,而非符號連接所指向的目標目錄。
- 當僅實用"-"一個選項時,當前工作目錄將被切換到環境變量"OLDPWD"所表示的目錄。
實例
cd 進入用戶主目錄;
cd ~ 進入用戶主目錄;
cd - 返回進入此目錄之前所在的目錄;
cd .. 返回上級目錄(若當前目錄為“/“,則執行完後還在“/";".."為上級目錄的意思);
cd ../.. 返回上兩級目錄;

cd !$ 把上個命令的參數作為cd參數使用。
##########
mkdir 建立一個新目錄
mkdir (選項)(參數)
-p: 遞歸
-v:可視化

rmdir 刪除一個內容為空的空目錄
####################
rm命令可以刪除一個目錄中的一個或多個文件或目錄,也可以將某個目錄及其下屬的所有文件及其子目錄均刪除掉。對於鏈接文件,只是刪除整個鏈接文件,而原有文件保持不變。

註意:使用rm命令要格外小心。因為一旦刪除了一個文件,就無法再恢復它。所以,在刪除文件之前,最好再看一下文件的內容,確定是否真要刪除。rm命令可以用-i選項,這個選項在使用文件擴展名字符刪除多個文件時特別有用。使用這個選項,系統會要求你逐一確定是否要刪除。這時,必須輸入y並按Enter鍵,才能刪除文件。如果僅按Enter鍵或其他字符,文件不會被刪除。

語法
rm (選項)(參數)
選項
-d:直接把欲刪除的目錄的硬連接數據刪除成0,刪除該目錄;
-f:強制刪除文件或目錄;
-i:刪除已有文件或目錄之前先詢問用戶;
-r或-R:遞歸處理,將指定目錄下的所有文件與子目錄一並處理;
--preserve-root:不對根目錄進行遞歸操作;
-v:顯示指令的詳細執行過程。
參數
文件:指定被刪除的文件列表,如果參數中含有目錄,則必須加上-r或者-R選項。

實例
交互式刪除當前目錄下的文件test和example

rm -i test example
Remove test ?n(不刪除文件test)
Remove example ?y(刪除文件example)
刪除當前目錄下除隱含文件外的所有文件和子目錄

rm -r *

應註意,這樣做是非常危險的!

第二周第一節、相對路徑和絕對路徑及cd、mkdir/rmdir、rm命令