絕對路徑: 由根目錄 (/) 開始寫起的檔名或目錄名稱.
eg: /var/spool
相對路徑: 相對於目前路徑的檔名寫法. 可以理解為開頭不是/就屬於相對路徑的寫法.
eg: ./var/spool 或../../var/spool
這裏”.” 代表當前的目錄, 也可以使用./來表示
”..” 代表上一層目錄, 也可以使用../來表示
舉個例子, 如下:
linux 下/var/spool 下存在 cron mail 等目錄, 如下, 我們通過 絕對路徑 cd /var/spool/cron 和 cd /var/spool/mail 來切換目錄.
[root@sqj2015 ~]# cd /var/spool/cron
[root@sqj2015 cron]# cd /var/spool/mail
[root@sqj2015 mail]#
若現在已經在 mail 目錄如何使用相對路徑切換到 cron 目錄呢?
[root@sqj2015 mail]# cd ../cron
[root@sqj2015 cron]# pwd
/var/spool/cron
再假如我還是處於以下目錄, 怎麼通過相對路徑切換到/boot.
[root@sqj2015 cron]# pwd
/var/spool/cron
[root@sqj2015 cron]# cd ../../../boot
[root@sqj2015 boot]# pwd
/boot
其實很好理解, 要想切換到/boot, 相當於先退回/, 在切換到 boot 目錄.
[root@sqj2015 boot]# cd /var/spool/cron
[root@sqj2015 cron]# pwd
/var/spool/cron
[root@sqj2015 cron]# cd ../../..
[root@sqj2015 /]# cd /boot
[root@sqj2015 boot]# pwd
/boot
當然上面可以使用更簡單的命令 cd /boot 即可搞定, 不過上面只是舉個事例. 有時候我們為了方面區別, 可能把目錄定義的很長如第一個目錄/home/school/grade1/class1/stud1/ 而另一個目錄為/home/school/grade1/class1/stud2, 那麼我從第一個目錄切換到第二目錄,cd ../stud2 是不是更方面呢?
當然, 對於檔案的正確性, 絕對路徑正確度要比較好.
有時候會看到類似這樣的資料 ./test.sh, 代表執行本目錄下名為 test.sh 的檔案.