在了解了linux檔案管理背景知識
之後, 我們可以學習一些命令來管理我們的檔案。
1. 檔案操作相關
有一些命令可以幫助我們"修剪"之前看到的檔案樹。
$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 / 它會刪除整個檔案樹。f的目的是告訴rm放心幹,不用再確認了…… 一般情況下,應該沒有人會用這個命令。)
$mkdir /home/vamei/good
建立乙個新的目錄
$rmdir /home/vamei/good
刪除乙個空的目錄
2. 檔案許可權相關
$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組
3. linux檔名通配表示式 (wild card, 也叫filename pattern matching)
之前所講的命令,比如ls, mv, cp都可以接收多個引數,比如:
$ls -l a.txt b.txt c.txt
就可以列出這三個檔案的所有資訊。
有時候,我們想列出工作目錄下所有的以.txt結尾的檔案的資訊,可以用下面的方式:
$ls -l *.txt
*.txt的寫法就運用了linux通配表示式。它與正規表示式相類似,但語法有所不同。
filename pattern matching 對應含義
* 任意多個任意字元
? 任意乙個字元
[kl] 字元k或者字元l
[0-4] 數字0到4字元中的乙個
[b-e] b到e字元中的乙個
[^mnp] 乙個字元,這個字元不是m,n,p
linux會找到符合表示式的檔名,然後用這些檔名作為引數傳遞給命令。注意,當使用rm的時候,要格外小心。下面兩個命令,只相差乙個空格,但效果大為不同:
$rm * .txt
$rm *.txt
第乙個命令會刪除當前目錄下所有檔案!
總結:touch, ls, mv, cp, rm, mkdir, rmdir
chmod, chown, chgrp
wild card
Linux檔案管理相關命令
在了解了linux檔案管理背景知識 之後,我們可以學習一些命令來管理我們的檔案。有一些命令可以幫助我們 修剪 之前看到的檔案樹。touch a.txt 如果a.txt不存在,生成乙個新的空文件a.txt。如果a.txt存在,那麼只更改該文件的時間資訊。這個命令實際上用得並不廣泛,但可以幫我們建立乙個...
Linux檔案管理相關命令
在了解了linux檔案管理背景知識 之後,我們可以學習一些命令來管理我們的檔案。有一些命令可以幫助我們 修剪 之前看到的檔案樹。touch a.txt 如果a.txt不存在,生成乙個新的空文件a.txt。如果a.txt存在,那麼只更改該文件的時間資訊。這個命令實際上用得並不廣泛,但可以幫我們建立乙個...
Linux檔案管理相關命令
在了解了linux檔案管理背景知識 之後,我們可以學習一些命令來管理我們的檔案。有一些命令可以幫助我們 修剪 之前看到的檔案樹。touch a.txt 如果a.txt不存在,生成乙個新的空文件a.txt。如果a.txt存在,那麼只更改該文件的時間資訊。這個命令實際上用得並不廣泛,但可以幫我們建立乙個...