在 Linux 中,簡單的理解一個檔案的路徑,指的就是該檔案存放的位置,例如,在《Linux檔案系統的層次結構》中提到的 /home/cat 就表示的是 cat 檔案所存放的位置,只要我們告訴 Linux 系統某個檔案存放的準確位置,那么它就可以找到這個檔案,
指明一個檔案存放的位置,有 2 種方法,分別是使用絕對路徑和相對路徑,
我們知道,Linux 系統中所有的檔案(目錄)都被組織成以根目錄“/”開始的倒置的樹狀結構,如下圖所示,

Linux系統檔案組織結構示意圖
絕對路徑一定是由根目錄 / 開始寫起,例如,使用絕對路徑的表示方式指明 bin 檔案所在的位置,該路徑應寫為 /usr/bin,測驗代碼如下:
[root@localhost ~]# bin
bash: bin: command not found <-- 沒有找到
[root@localhost ~]# /usr/bin
bash: /usr/bin: is a directory <-- 是一個檔案
可以看到,如果僅傳遞給 Linux 系統一個檔案名,它無法找到指定檔案;而當將 bin 檔案的絕對路徑傳遞 Linux 系統時,它就可以成功找到,
和絕對路徑不同,相對路徑不是從根目錄 / 開始寫起,而是從當前所在的作業目錄開始寫起,使用相對路徑表明某檔案的存盤位置時,經常會用到前面講到的 2 個特殊目錄,即當前目錄(用 . 表示)和父目錄(用 .. 表示),
舉個例子,當我們使用 root 身份登錄 Linux 系統時,當前作業目錄默認為 /root,如果此時需要將當前作業目錄調整到 root 的子目錄 Desktop 中,當然可以使用絕對路徑,示例代碼如下:
[root@localhost ~]# pwd <-- 顯示當前所在的作業路徑
/root
[root@localhost ~]# cd /root/Desktop
[root@localhost Desktop]# pwd
/root/Desktop
注意,這里所使用的 pwd 和 cd 命令,目前只需知道它們的功能即可,具體用法會在后續文章中作詳細講解,
可以看到,通過使用絕對路徑,我們成功地改變了當前作業路徑,但除此之外,使用相對路徑的方式會更簡單,因為目前處于 /root 的位置,而 Desktop 就位于當前目錄下,所以:
[root@localhost ~]# pwd <-- 顯示當前所在的作業路徑
/root
[root@localhost ~]# cd ./Desktop
[root@localhost Desktop]# pwd
/root/Desktop
此代碼中,./Desktop 表示的就是 Destop 檔案相對于 /root 所在的路徑,
再舉一個例子,如果以 root 身份登錄 Linux 系統,并實作將當前作業目錄由 /root 轉換為 /usr 目錄,有以下 2 種方式:
#使用絕對路徑
[root@localhost ~]# pwd <-- 顯示當前所在的作業路徑
/root
[root@localhost ~]# cd /usr
[root@localhost ~]# pwd
/usr
#使用相對路徑
[root@localhost ~]# pwd <-- 顯示當前所在的作業路徑
/root
[root@localhost ~]# cd ../usr <-- 相對 root,usr 位于其父目錄 /,因此這里要用到 ..
[root@localhost ~]# pwd
/usr
總之,絕對路徑是相對于根路徑 / 的,只要檔案不移動位置,那么它的絕對路徑是恒定不變的;而相對路徑是相對于當前所在目錄而言的,隨著程式的執行,當前所在目錄可能會改變,因此檔案的相對路徑不是固定不變的,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/148083.html
標籤:Linux
上一篇:[Linux] linux路由表
下一篇:Linux常用基礎命令
