linux .和..的區別

linux .和..的區別

.? (dot,就是“點”) ? ? (推薦學習:linux運維

在 shell 中,使用者應該都清楚,一個 dot 代表當前目錄,兩個 dot 代表上層目錄。

CDPATH=.:~:/home:/home/web:/var:/usr/local

在上行 CDPATH 的設定中,等號后的 dot 代表的就是當前目錄的意思。

如果檔案名稱以 dot 開頭,該檔案就屬特殊檔案,用 ls 指令必須加上 -a 選項才會顯示。除此之外,在 regularexpression 中,一個 dot 代表匹配一個字元。

linux中當.(點)放在一個需要一個目錄名稱的命令的參數處時,表示“當前目錄”;而一個緊接著另一個的兩個點(..)呢,在同樣的場景下(即當你的命令期望一個文件目錄的時候)表示“當前目錄的父目錄”。

linux shell中的點命令完全等同于source命令。

[taoge@localhost?Desktop]$?cat?a.sh? #!?/bin/bash echo?"shell?script" export?z="f(x)?+?f(y)" [taoge@localhost?Desktop]$?./a.sh? shell?script [taoge@localhost?Desktop]$?echo?$z  [taoge@localhost?Desktop]$?.?./a.sh? shell?script [taoge@localhost?Desktop]$?echo?$z f(x)?+?f(y) [taoge@localhost?Desktop]$

? 我們看到, 點命令的作用, 確實就等價于source命令。 請注意看”. ./a.sh”, 前面一個點是點命令, 等價于source, 后面一個點是和/一起的, ./表示當前目錄, 而且, 千萬要注意, 這兩個點之間必須有空格。

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享