1. 程式人生 > >Linux學習筆記10——Linux 檔案與目錄管理

Linux學習筆記10——Linux 檔案與目錄管理

一、目錄與路徑

如果是在寫程式 (shell scripts) 來管理系統的條件下,務必使用絕對路徑的寫法。 怎麼說呢?因為絕對路徑的寫法雖然比較麻煩,但是可以肯定這個寫法絕對不會有問題。 如果使用相對路徑在程式當中,則可能由於你執行的工作環境不同,導致一些問題的發生。

1,目錄的相關操作

到變換目錄的指令是cd,特殊的目錄:

有個有趣的問題,/(根目錄)是否有上層目錄?用ls -al查詢,發現根目錄確實是有上層目錄,cd ..發現還是在根目錄,即根目錄的上級目錄和當前目錄是一樣的。

常見的目錄相關指令:

cd:變換目錄

pwd:顯示目前的目錄

mkdir:建立一個新的目錄

rmdir:刪除一個空的目錄

cd (change directory, 變換目錄)

# pwd [-P]

-P :顯示出確實的路徑,而非使用連結 (link) 路徑。

cd /var/mail

pwd

pwd -P

為什麼會有這麼大差異?

因為這是個連結檔案。

mkdir [-mp] 目錄名稱

-m :設定檔案的許可權喔!直接設定,不需要看預設許可權 (umask) 的臉色~

-p :幫助你直接將所需要的目錄(包含上層目錄)遞迴建立起來!

在test下嘗試建立數個資料夾:

要想一次建立多級目錄,需要用-p

mkdir -p a1/b1/c1/d

建立許可權為rwx--x--x的目錄

當然如果沒有用-m則會採用預設許可權

不過在生成目錄時,不建議用-p,要是寫錯了就會很麻煩的。

rmdir (刪除“空”的目錄)

rmdir [-p] 目錄名稱

-p :連同“上層”“空的”目錄也一起刪除

一旦目錄非空,則會報錯。

[[email protected] test]# rmdir -p a1/b1/c1/d1/

# 瞧!利用 -p 這個選項,立刻就可以將 test1/test2/test3/test4 一次刪除~

# 不過要注意的是,這個 rmdir 僅能“刪除空的目錄”喔!

那如果要將所有目錄下的東西都殺掉呢?! 這個時候就必須使用“ rm -r test ”囉!不過,還是使用 rmdir 比較不危險!你也可以嘗試以 -p 的選項加入,來刪除上層的目錄喔!

2,關於可執行檔案路徑的變數: $PATH

我們查閱當前目錄的相關資訊,用ls就可以,為什麼我可以在任何地方執行/bin/ls這個指令呢?這是

因為環境變數 PATH 的幫助所致呀!

PATH(一定是大寫)這個變數的內容是由一堆目錄所組成的,每個目錄中間用冒號(:)來隔開, 每個目錄是有“順序”之分的。仔細看一下上面的輸出,你可以發現到無論是root還是其他使用者都有 /bin 或 /usr/bin 這個目錄在PATH變數內,所以當然就能夠在任何地方執行ls來找到/bin/ls可執行檔案囉!

如果要再PATH中再新增一個目錄,放置可執行檔案: