檔案管理命令

Linux 對 present 和 parent 目錄使用一些約定。這對於初學者來說可能有點混亂。

每當你在 Linux 中的終端中時,你將處於所謂的當前工作目錄中。通常,你的命令提示符將顯示完整的工作目錄,或者只顯示該目錄的最後一部分。你的提示可能如下所示:

user@host ~/somedir $
user@host somedir $
user@host /home/user/somedir $

這表示你當前的工作目錄是/home/user/somedir

在 Linux 中,..表示父目錄,.表示當前目錄。

因此,如果當前目錄是/home/user/somedir,那麼 cd ../somedir 將不會更改工作目錄。

下表列出了一些最常用的檔案管理命令

目錄導航

命令 效用
pwd 獲取當前工作目錄的完整路徑。
cd - 導航到你正在使用的最後一個目錄。
cd ~ 或者只是 cd 導航到當前使用者的主目錄。
cd .. 轉到當前目錄的父目錄(請注意 cd.. 之間的空格)

列出目錄中的檔案

命令 效用
ls -l 以 long(表)格式列出當前目錄中的檔案和目錄(為了更好的可讀性,建議使用 -l 和 ls)。
ls -ld dir-name 列出有關目錄 dir-name 而不是其內容的資訊。
ls -a 列出所有檔案,包括隱藏檔案(以 . 開頭的檔名是 Linux 中的隱藏檔案)。
ls -F 在檔名的末尾附加一個符號以表示其型別(*表示可執行檔案,/表示目錄,@ 表示符號連結,= 表示套接字,
ls -lt 列出按上次修改時間排序的檔案,最近修改的檔案顯示在頂部(記住 -l 選項提供具有更好可讀性的長格式)。
ls -lh 以人類可讀的格式列出檔案大小。
ls -lR 以遞迴方式顯示所有子目錄。
tree 將從當前目錄開始生成檔案系統的樹表示。

檔案/目錄建立,複製和刪除

命令 效用
cp -p source destination 將檔案從 source 複製到目的地。 -p 代表儲存。它在複製檔案所有者,時間戳,組,許可權等時保留檔案的原始屬性。
cp -R source_dir destination_dir 將源目錄遞迴複製到指定的目標。
mv file1 file2 在 Linux 中沒有這樣的重新命名命令。因此 mv 將 file1 移動/重新命名為 file2。
rm -i filename 在每次刪除檔案之前詢問你是否確認。**如果你是 LINUX COMMAND LINE 的新使用者,你應該總是使用 rm -i。**你可以指定多個檔案。
rm -R dir-name 將遞迴刪除目錄 dir-name
rm -rf dir-name 將遞迴刪除目錄 dir,忽略不存在的檔案,永遠不會提示任何東西。小心使用這個命令! 你可以指定多個目錄。
rmdir dir-name 將刪除目錄 dir-name,如果它是空的。此命令只能刪除空目錄。
mkdir dir-name 建立一個目錄 dir-name
mkdir -p dir-name/dir-name 建立目錄層次結構。根據需要建立父目錄(如果它們不存在)。你可以指定多個目錄。
touch filename 建立檔案 filename,如果它不存在,否則將檔案的時間戳更改為當前時間。

檔案/目錄許可權和組

命令 效用
chmod <specification> filename 更改檔案許可權。規格= u 使用者,g 組,o 其他,+新增許可權,- 刪除,r 讀取,w 寫入,x 執行。
chmod -R <specification> dir-name 遞迴更改目錄的許可權。要更改目錄的許可權以及該目錄中的所有內容,請使用此命令。
chmod go=+r myfile 為所有者和組新增讀取許可權。
chmod a +rwx myfile 允許所有使用者讀取,寫入或執行 myfile
chmod go -r myfile 刪除組和其他人的讀取許可權。
chown owner1 filename 將檔案的所有權更改為使用者 owner1
chgrp grp_owner filename 將檔案 filename 的主要組所有權更改為 group grp_owner
chgrp -R grp_owner dir-name 將目錄 dir-name 的主要組所有權更改為遞迴組 grp_owner。要更改目錄的組所有權以及該目錄中的所有內容,請使用此命令。