在了解了Linux檔案管理背景知識在 之後, 我們可以學習一些指令來管理我們的檔案。
#有一些指令可以幫助我們"修剪"之前看到的檔案樹。
$touch a.txt
如果a.txt不存在,產生一個新的空白文檔a.txt。如果a.txt存在,那麼只更改該文件的時間資訊。 (這個指令其實用得併不廣泛,但可以幫我們建立一個空檔來實驗下面操作)
#$ls .
是list的簡寫,列出目前目錄下的所有檔案名稱
#$ls -l a.txt
列出檔案的詳細資訊
$cp a.txt b .txt
cp是copy的簡寫,用來複製檔。在工作目錄下,將a.txt複製到檔案b.txt
$cp a.txt ..
將a.txt複製到父目錄的a.txt
#$mv a.txt c.txt
mv是move的簡寫,用來移動檔。將a.txt移到c.txt (相當於重新命名rename)
#$mv c.txt /home/vamei
將c.txt移到/home/vamei目錄
#
##$rm a.txt
#rm是remove的縮寫,用來刪除文件。刪除a.txt
$rm -r /home/vamei
刪除從/home/vamei向下的整個子檔案系統。 -r表示recursive, 是指重複刪除的動作,/home/vamei資料夾為空,然後刪除/home/vamei資料夾本身。
#(程式設計師總是對這個指令很有興趣, $rm -rf /它會刪除整個檔案樹。
$mkdir /home/vamei/good
建立一個新的目錄
$rmdir /home/vamei/good
##刪除一個空的目錄
$chmod 755 a.txt
(你必須是檔案a.txt的擁有者才能執行此指令。或以$sudo chmod 755 a.txt的方式,以超級使用者的身分執行該指令。)
change mode 改變a.txt的讀取、寫入以及執行權限。還記得每個檔案都有九位的讀寫執行權限(參看Linux檔案管理背景知識),分為三組,分別對應擁有者(owner),擁有群組(owner group)中的使用者和所有其他使用者( other)。在這裡,我們也有三個數字,755,對應三個組別。 7被分配給擁有者,5被分配給擁有群組,最後一個5分配給其它使用者。 Linux規定: 4為有讀取的權利,2為有寫入的權利,1為有執行的權利。我們看到的7其實是4 + 2 + 1,表示擁有者有讀、寫、執行三項權利。 (想想5 意味著什麼)
#這時,執行$ls -l a.txt, 你應該會看到九位元的權限變成了rwxr-xr-x。根據自己的需要,你可以用例如444, 744代替755,來讓檔案有不同的權限。
#$sudo chown root a.txt
change owner 將檔案的擁有者改變為root使用者。這個指令需要有超級使用者權限才能執行,所以我們在指令之前加上sudo。
#$sudo chgrp root a.txt
#change group 改變檔案的擁有群組為root群組
##
####(wild card, 也叫filename pattern matching)
之前所講的指令,例如ls, mv, cp都可以接收多個參數,例如:
$ls -l a.txt b.txt c.txt
就可以列出這三個檔案的所有資訊。
#
有時候,我們想列出工作目錄下所有的以.txt結尾的檔案的信息,可以用下面的方式:
$ls -l *.txt
*.txt的寫法就運用了Linux通配表達式。它與正規表示式相類似,但語法有所不同。
of
Filename Pattern Matching 對應意義
#
* ”# 任意一個字元
[kl] ##[0-4] 中數位0到4字元中的一個
#o## b到e字元中的一個
Linux會找到符合運算式的檔名,然後用這些檔名作為參數傳遞給指令。注意,使用rm的時候,要格外小心。下面兩個指令,只相差一個空格,但效果大為不同:
#$rm * .txt
$rm *.txt #第一個指令會刪除目前目錄下所有檔案! # #touch, ls , mv, cp, rm, mkdir, rmdir chmod, chown, chgrp wild card總結
以上是有關Linux檔案管理的相關命令教程的詳細內容。更多資訊請關注PHP中文網其他相關文章!