這個問題在這里已經有了答案: Linux中的雙點(..)和單點(.)是什么? (4 個回答) 4 小時前關閉。
我看到一些 shell 腳本cd進入某個以別名開頭并在其間有 /../../ 的檔案路徑,例如:
$exampleroot/../../folder/subfolder/filename.zip
我知道 /../ 表示根路徑,但是 /../../ 指的是什么?這是否意味著無論檔案夾名稱如何,都要捕獲其間的所有其他子檔案夾?
謝謝
uj5u.com熱心網友回復:
..表示父目錄,即包含$exampleroot. ../../因此向上兩個級別:
$ pwd
/tmp
$ mkdir -pv foo/bar
mkdir: created directory 'foo/bar'
$ cd foo/bar/
$ pwd
/tmp/foo/bar
$ cd ../..
$ pwd
/tmp
uj5u.com熱心網友回復:
一個例子可能會有所幫助。假設$exampleroot是/one/two/three/four(這是一個目錄)。然后:
$exampleroot/..相當于/one/two/three$exampleroot/../..是/one/two$exampleroot/../../folder是/one/two/folder$exampleroot/../../folder/subfolder/filename.zip是/one/two/folder/subfolder/filename.zip
(注意:如果/one/two/three/four不是目錄,則/one/two/three/four/..不是有效路徑。如果路徑中有符號鏈接之類的東西,也會有一些奇怪的例外,因為在目錄層次結構中上一層與取消關注不同符號鏈接。)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/479244.html
