国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

Linux絕對路徑和相對路徑詳解

2024-08-27 23:57:14
字體:
供稿:網(wǎng)友
在 linux 中,簡單的理解一個文件的路徑,指的就是該文件存放的位置,例如,在《Linux文件系統(tǒng)的層次結(jié)構(gòu)》中提到的 /home/cat 就表示的是 cat 文件所存放的位置。只要我們告訴 Linux 系統(tǒng)某個文件存放的準(zhǔn)確位置,那么它就可以找到這個文件。

指明一個文件存放的位置,有 2 種方法,分別是使用絕對路徑相對路徑。

我們知道,Linux 系統(tǒng)中所有的文件(目錄)都被組織成以根目錄“/”開始的倒置的樹狀結(jié)構(gòu),如圖 1 所示。

圖 1 Linux系統(tǒng)文件組織結(jié)構(gòu)示意圖
絕對路徑一定是由根目錄 / 開始寫起。例如,使用絕對路徑的表示方式指明 bin 文件所在的位置,該路徑應(yīng)寫為 /usr/bin,測試代碼如下:

[root@localhost ~]# bin
bash: bin: command not found   <-- 沒有找到
[root@localhost ~]# /usr/bin
bash: /usr/bin: is a directory   <-- 是一個文件

可以看到,如果僅傳遞給 Linux 系統(tǒng)一個文件名,它無法找到指定文件;而當(dāng)將 bin 文件的絕對路徑傳遞 Linux 系統(tǒng)時,它就可以成功找到。

和絕對路徑不同,相對路徑不是從根目錄 / 開始寫起,而是從當(dāng)前所在的工作目錄開始寫起。使用相對路徑表明某文件的存儲位置時,經(jīng)常會用到前面講到的 2 個特殊目錄,即當(dāng)前目錄(用 . 表示)和父目錄(用 .. 表示)。

舉個例子,當(dāng)我們使用 root 身份登錄 Linux 系統(tǒng)時,當(dāng)前工作目錄默認(rèn)為 /root,如果此時需要將當(dāng)前工作目錄調(diào)整到 root 的子目錄 Desktop 中,當(dāng)然可以使用絕對路徑,示例代碼如下:

[root@localhost ~]# pwd     <-- 顯示當(dāng)前所在的工作路徑
/root
[root@localhost ~]# cd /root/Desktop
[root@localhost Desktop]# pwd
/root/Desktop

注意,這里所使用的 pwd 和 cd 命令,目前只需知道它們的功能即可,具體用法會在后續(xù)文章中作詳細(xì)講解。

可以看到,通過使用絕對路徑,我們成功地改變了當(dāng)前工作路徑。但除此之外,使用相對路徑的方式會更簡單。因為目前處于 /root 的位置,而 Desktop 就位于當(dāng)前目錄下,所以:

[root@localhost ~]# pwd    <-- 顯示當(dāng)前所在的工作路徑
/root
[root@localhost ~]# cd ./Desktop
[root@localhost Desktop]# pwd
/root/Desktop

此代碼中,./Desktop 表示的就是 Destop 文件相對于 /root 所在的路徑。

再舉一個例子,如果以 root 身份登錄 Linux 系統(tǒng),并實現(xiàn)將當(dāng)前工作目錄由 /root 轉(zhuǎn)換為 /usr 目錄,有以下 2 種方式:

#使用絕對路徑
[root@localhost ~]# pwd <-- 顯示當(dāng)前所在的工作路徑
/root
[root@localhost ~]# cd /usr
[root@localhost ~]# pwd
/usr
#使用相對路徑
[root@localhost ~]# pwd <-- 顯示當(dāng)前所在的工作路徑
/root
[root@localhost ~]# cd ../usr <-- 相對 root,usr 位于其父目錄 /,因此這里要用到 ..
[root@localhost ~]# pwd
/usr

總之,絕對路徑是相對于根路徑 / 的,只要文件不移動位置,那么它的絕對路徑是恒定不變的;而相對路徑是相對于當(dāng)前所在目錄而言的,隨著程序的執(zhí)行,當(dāng)前所在目錄可能會改變,因此文件的相對路徑不是固定不變的。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 保靖县| 集贤县| 承德市| 金坛市| 高要市| 大兴区| 镇安县| 康平县| 长葛市| 贵阳市| 新昌县| 黔西| 辽阳市| 石家庄市| 南丰县| 繁昌县| 稷山县| 浦县| 新昌县| 蓝田县| 衡阳县| 通州区| 泰和县| 水城县| 昌吉市| 荥阳市| 当阳市| 墨玉县| 乌拉特前旗| 大洼县| 玉屏| 体育| 平乡县| 双桥区| 上思县| 巴南区| 肥城市| 象山县| 太白县| 门源| 邵武市|