Linux檔案管理相關命令

2021-06-12 15:56:22 字數 2428 閱讀 4505

在了解了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存在,那麼只更改該文件的時間資訊。這個命令實際上用得並不廣泛,但可以幫我們建立乙個...