Linux下檔案與目錄管理

2021-08-15 15:14:33 字數 4970 閱讀 8540

1.檢視檔案與目錄:ls

基本語法:

ls [-a/a/d/d/f/f/i/l/n/r/r/s/t] 目錄名稱

ls [–color=] 目錄名稱

ls [–full-time] 目錄名稱

引數:

-a:全部檔案,包括隱藏檔案(即開頭為.的檔案)

-a:全部檔案,包括隱藏檔案,但不包括.與..這兩個目錄

-d:僅列出目錄本身,而不是列出檔案資料

-f:直接列出結果,而不進行排序

-f:根據檔案、目錄等資訊給予附加資料結構

-h:以人類易讀的方式列出來

-i:列出inode號碼

-l:列出長資料串,包含檔案屬性與許可權等資料

-n:列出uid與gid,而非使用者與使用者組的名稱

-r:將排序資料反向輸出

-r:連同子目錄內容一起列出來

-s:以檔案容量大小排序,而不是用檔名排序

-t:依時間順序,而不是檔名

–color=never:不要根據檔案特性給予顏色顯示

–color=always:顯示顏色

–color=auto:讓系統自行依據設定來判斷是否給予顏色

–full-time:以完整時間模式輸出

–time=:輸出訪問時間或改變許可權屬性時間

2.複製、刪除及移動:cp,rm,mv

cp [-a/d/f/i/l/p/r/s/u] 原始檔 目標檔案

-a: 在保留原檔案屬性的前提下複製檔案

-d:複製連線檔案屬性而非檔案本身

-f:強制

-i:詢問操作

-l:進行硬連線的連線檔案建立,而非複製檔案本身

-p:連同問檔案屬性一起複製過去

-r:遞迴複製

-s:複製成符號連線檔案

-u:目標檔案比原始檔舊,更新目標檔案

rm [-f/i/r] 檔案或目錄

引數:

-f:忽略不存在的檔案,不會出現警告資訊

-i:刪除前詢問

-r:遞迴刪除

mv [-f/i/u] 原始檔 目標檔案

引數:

-f:強制移動

-i:移動前詢問

-u:目標檔案比原始檔舊,更新目標檔案

3.取得路徑的檔名與目錄名稱

basename 取得最後的檔名

dirname 取得目錄名

4.檢視檔案內容

cat -n 列印出行號,連同空白行也會有行號

tac 與cat反向,指反向列示,即由最後一行到第一行顯示

nl 新增行號列印

nl [-b/n/w] 檔案

引數:

-b:

-b a:不論是否有空行,一同列出行號

-b t:如果有空行,空的一行不要列出行號

-n:

-n ln:行號在螢幕的最左方顯示

-n rn:行號在自己欄位的最右方顯示,且不加0

-n rz:行號在自己欄位的最右方顯示,且加0(預設字段六位數)

-w:行號字段占用的位數

5.可翻頁檢視

more 檔案

在more這個程式的執行過程中,可以選擇以下按鍵:

空格鍵:向下翻一頁

enter:向下滾動一行

/字串:在顯示的內容中,向下查詢該字串

:f :立刻顯示出檔名以及目前顯示的行數

q :離開more

b :往回翻頁,只對檔案有用,對管道沒有作用

less

less相比起more來說,可以進行從前往後的翻頁

空格鍵:向下翻一頁

/字串:向下查詢字串

?字串:向上查詢字串

n:重複前乙個查詢

n:反向重複前乙個查詢

q:離開less這個程式

6.資料選取

head 取出前面幾行

基本語法:

head [-n/number] 檔案

引數:

-n:後邊接數字,代表幾行的意思

tail 取出後面幾行

基本語法:

tail [-n/number] 檔案

引數:

-n:後邊接數字,代表幾行的意思

-f:持續檢測後面所接的檔名,要等按下[ctrl]-c才會結束tail的檢測

7.非純文字檔案:od

od [-t type] 檔案

type(型別):

a:利用預設的字元輸出

c:使用ascll字元輸出

d[size]:利用十進位制輸出,每個整數占用size位元位

f[size]:利用浮點數輸出,每個整數占用size位元位

o[size]:利用八進位制輸出,每個整數占用size位元位

x[size]:利用十六進製制輸出,每個整數占用size位元位

8.修改檔案時間或建立新檔案:touch

touch [-a/c/d/m/t] 檔案

-a:僅修改訪問時間

-c:僅修改檔案的時間,若檔案不存在則不建立新檔案

-d:後面可以接準備修改的日期而不用目前日期,也可以使用–date=「日期或時間」

-m:僅修改mtime

-t:後面可以接準備修改的時間而不用目前的時間

touch常用的情景:

建立乙個空檔案

將某個檔案日期修改為目前日期(mtime、atime)

9.檔案與目錄的預設許可權與隱藏許可權

9.1 檔案預設許可權:umask

umask 許可權設定分數(注意:此分數是需要減掉的許可權,r、w、x分別是4、2、1,舉個例子,需要拿掉寫的許可權,輸入2,需要拿掉讀的許可權,輸入4)

umask -s 符號型別顯示許可權

那麼怎樣更改umask的設定值呢?

umask 設定值

9.2 檔案隱藏屬性:chattr,lsattr

chattr設定檔案隱藏屬性

基本語法:

chattr [+/-/=][a/s/a/c/d/i/s/t/u] 檔案或目錄名稱

引數:

+:增加某乙個特殊引數,其他原本存在引數則不動

-:刪除某乙個特殊引數,其他原本存在引數則不動

=:僅有後面接的引數

a: s:

a:只能增加資料,不能刪除或修改資料

c:自動將檔案壓縮,讀取檔案時會自動解壓縮。儲存時,先壓縮在進行儲存

d:當dump程式被執行的時候,設定d屬性可將該檔案或目錄不會被dump備份

i:讓乙個檔案不能被刪除、改名,設定連線也無法寫入或新增資料

s:如果這個檔案被刪除,將會完全從這個硬碟空間中刪除

u:如果這個檔案被刪除,資料內容還存在磁碟中,可以找回

lsattr顯示檔案隱藏屬性

lsattr [-a/d/r] 檔案或目錄

引數:

-a:將隱藏檔案的屬性也顯示出來

-d:如果接的是目錄,僅列出目錄本身的屬性而非目錄內的檔名

-r:連同子目錄的資料也列出來

9.3 檔案特殊許可權:suid,sgid,sbit

suid:

該許可權僅對二進位制程式有效

執行者對於該程式需要就有x的可執行許可權

本許可權僅在執行該程式的過程中有效

執行者將具有該程式所有者許可權

sgid:

對於設定sgid的檔案來說:

* 該許可權僅對二進位制程式有效

* 執行者對於該程式需要就有x的可執行許可權

* 執行者在執行的過程中將會獲得該程式使用者組支援

對於設定sgid的目錄來說:

* 使用者若對此目錄具有r與w許可權時,該使用者能進入此目錄

* 使用者在此目錄下的有效使用者組將會變成該目錄的使用者組

* 若使用者在此目錄下具有w的許可權,則使用者所建立的新檔案的使用者組與此目錄的使用者組相同

sbid:

只對目錄有效,該許可權對目錄來說:

* 當使用者對於此目錄具有w,x許可權,即具有寫入的許可權

* 當使用者在該目錄下建立檔案或目錄時,僅有自己與root才有權利刪除該檔案

9.4.檢視檔案型別:file

10.命令與檔案查詢

10.1 指令碼檔名查詢

which 尋找執行檔案

which [-a] 命令

引數:

-a:將所有由path目錄中可以找到的命令均列出,而不只第乙個被找到的命令名稱

10.2 檔名的查詢

whereis 尋找特定檔案

whereis [-b/m/s/u] 檔案或目錄名

引數:

-b:只找二進位制格式的檔案

-m:只找說明檔案manual路徑下的檔案

-s:只找source原始檔

-u:查詢不在上述三個選項當中的其他特殊檔案

locate [-i/r] keyword

引數:

-i:忽略大小寫的差異

-r:後面可接正規表示式的顯示方式

find [path] [option] [action]

引數:

與時間有關引數:-atime,-ctime,-mtime

-mtime n:n天之前的那一天被更改過的檔案

-mtime +n:列出在n天之前(不含n天本身)被更改過的檔名

-mtime -n:列出在n天之內(含n天本身)被更改過的檔名

-never file:file為乙個存在的檔案,列出比file還要新的檔名

Linux 檔案與目錄管理

特殊目錄 當前目錄 上一層目錄 上乙個工作目錄 當前使用者的家目錄 username username的家目錄 ls,重要選項 a 顯示隱藏部分,r 遞迴顯示資料夾內容 l 顯示詳細資訊 ll等價與 ls l file 顯示文件到屬性,如binary or ascii等 which command ...

Linux檔案與目錄管理

1 幾個常見的處理目錄的指令 cd 變換目錄 change directory 注意 目錄名稱與cd指令之間存在乙個空格 pwd 顯示當前目錄 print working directory pwd p 顯示完整路徑 mkdir 建立乙個新的目錄 make directory mkdir p tes...

Linux 檔案與目錄管理

1 當前目錄 上層目錄 cd cc 由aa bb 目錄切換到 aa cc 目錄下 上一工作目錄 相當於視窗中alt tab 當前使用者身份到主資料夾 2.cd 目錄切換 change directory 3.pwd顯示目前所在目錄 print working directory 4.mkdir 建立...