linux檔案與目錄管理筆記

2022-01-24 12:51:08 字數 4550 閱讀 1182

### linux檔案與目錄管理  

----------

絕對路徑: /

相對路徑:不以/開頭的

當前目錄 .

上乙個工作目錄 -

使用者主目錄 ~ root賬戶的主目錄是/root 其他使用者是/home/賬戶名

cd ~leyi 切換到leyi賬戶的主目錄,即/home/leyi

pwd 顯示當前目錄

mkdir -p 111/222 建立多級目錄 -p 引數

rmdir -p 111/222 當刪除了222後111是空目錄則222也會被刪除

rmdir 僅能刪除空目錄

**ls 常用命令 **

-a 全部 -d 目錄 -l 長資料串輸出(包含許可權和屬性)

ls -l 的別名(alias) ll

藍色是目錄 白色是一般檔案

**cp 複製檔案或目錄 **

-i 覆蓋時詢問(y/n) -r 遞迴複製 -p 複製檔案連許可權 使用者 時間 一起複製 (備份時常用)

-a 相當於 -d -p -r -d如果原始檔是鏈結檔案複製鏈結檔案而非檔案本身

-s 建立軟了鏈結(或者叫符號鏈結) -l hard link(硬鏈結或者叫實體鏈結)

**硬鏈結檔案和原始檔一樣,軟鏈結相當於乙個快捷方式 **

echo '1234'>1.txt

cp 1.txt ./s_link -s //軟連線

cp 1.txt ./h_link -l //硬鏈結

**rm 刪除檔案或目錄 **

-i 缺省會提示 -r 遞迴刪除 -f 強制刪除

rm h* -rf 刪除h開頭的的檔案 *為任意多個字元

**mv 移動檔案和目錄或者更改名字 **

mv 1.txt 2.txt 改名

mv 1.txt d 將1.txt移動到d目錄

mv 1.txt 2.txt d 如果有多個**檔案或目錄 則最後乙個為目標目錄

**basename(檔名) 和 dirname(目錄名)**

mkdir 11/22/33/44.txt -p

basename 11/22/33/44.txt 返回 44.txt

dirname 11/22/33/44.txt 返回 11/22/33

**檔案內容檢視 **

cat 從檔案第一行開始顯示內容

tac 從最後一行開始顯示內容,反著顯示 (cat反著寫)

more 一頁一頁的顯示 more /etc/sudo.conf

less more的功能+可以翻頁 less /etc/sudo.conf

enter或者space 翻頁

q 退出檢視

:f 檢視當前行號和檔案大小

/向下搜尋的內容 可以搜尋關鍵字 ?向上搜尋關鍵字

pagedown pageup home end

head 只看頭幾行 -n 自定義檢視前多少行

head /etc/sudo.conf -n 5 檢視前5行的資料

head /etc/sudo.conf -n -5 檢視除了末尾5行的前面的所有資料

tail 只看尾幾行

tail /etc/sudo.conf -n 5 檢視後5行

通過管道符取5到10行

head /etc/sudo.conf -n 10 | tail -n 5

od -t a(ascall碼輸出) 非文字檔案檢視

od -t a /usr/bin/passwd

**修改檔案時間和建立檔案 **

date 檢視當前時間

mtime (modify time) 檔案內容變更後的時間 ll預設顯示這個時間

ll --time=mtime ??? 報錯 ll 11.txt 就是顯示的mtime

ctime (change time) 許可權等更新後的時間

ll --time=ctime

atime (access time ) 檔案被讀取後的時間 (最後訪問時間)

ll --time=atime

修改檔案的內容後 mtime更新 ctime也改變了 mtime不更新

ll echo '123'>11.txt

ll

修改許可權後 ctime更新 mtime atime 不更新

ll --time=ctime 11.txt

chmod 777 11.txt

ll --time=ctime 11.txt

讀取後 atime更新 ctime mtime 不更新

11 --time=atime 11.txt

cat 11.txt

11 --time=atime 11.txt

**; 分號可以分割指令,一次寫多個指令執行 **

ll;touch 1.txt;ll

**touch 修改檔案時間(只能修改mtime atime,不能修改ctime)或建立新檔案 **

touch 11.txt 更新檔案的所有時間 (mtime ctime atime)

touch -d '20180615' 11.txt

ll //mtime

ll --time=atime 11.txt //atime

ll --time=ctime 11.txt //ctime

-c 修改 ctime -m 修改 mtime

-t -d 都是修改日期或者時間

touch -t 201806151430 11.txt

**root賬戶把自己主目錄的11.txt複製到leyi的主目錄,除了leyi其他使用者不能寫**

cp ~/11.txt ~leyi

chown leyi.leyi ~leyi/11.txt

chmod go-x ~leyi/11.txt 或者 chmod 755 ~leyi/11.txt

ll ~leyi

**檔案和目錄的預設許可權 umask 0022 4位數 只看後三位**

數字代表被拿掉的許可權 比如0022 代表被g拿掉了w o拿掉了w

umask -s 可以看到 u=rwx,g=rx,o=rx

**檔案的特殊屬性(隱藏屬性) **

chattr 只能在傳統的ext2-4檔案系統上使用

chattr [-+=] 減少 增加 設定 某個屬性

chattr +i 11.txt 設定不能被改名刪除修改檔案,不能動的意思 (只有root賬戶可用)

chattr +a dir11 只能新增檔案,不能刪除修改檔案 (只有root賬戶可用)

lsattr 顯示特殊屬性 -a 隱藏檔案的也顯示 -d 顯示目錄 -r 包含目錄裡的檔案

**檢視檔案型別**

file 11.txt ascll 文字

**可執行程式檔名搜尋**

兩次tab 可以檢視有多少命令可以用(全部的可執行程式)

which 需要查詢的可執行程式名字

根據path定義的路徑去尋找可執行檔案

which ls;which cd;

which -a ls -a //查詢全部

**檔案檔名搜尋 **

whereis 特定目錄中尋找檔案檔名

-l 指定搜尋的目錄

-b 找binary二進位制格式檔案

whereis 11.txt

**find 硬碟搜尋(比較慢) **

+n -n n 這裡有點繞...

find . -mtime 0 從現在時間開始到24小時之前

-mtime n天之前的一天之內的被改動過的檔名(0 今天 1 昨天)

-mtime +n n天不含n之前被改動的內容(大於n天之前的,+0 昨天,+1前天)

-mtime -n n天之內包含n天在內的被改動的檔名(-1 幾天的)

-user 使用者名稱 查詢某個使用者的

find ~leyi -user leyi

-group 查詢某個群組的

find ~leyi -group leyi

-nouser 沒有使用者的檔案

-nogroup 沒有群組存在的檔案

-name xx 查詢檔案名為xx的檔案

find ~leyi . -name *leyi* 查詢檔案名包含 leyi的檔案

-size [+-] c:byte k:1kb 查詢符合指定檔案大小的檔案

find . -size +10k 查詢大於10k的檔案

linux學習筆記 檔案與目錄管理

1,絕對路徑與相對路徑的概念。絕對路徑由 開始 2,特殊的目錄符號 account 3,與目錄相關的指令,如cdmkdirrmdirpwd等 4,rmdir僅能刪除空目錄,要刪除非空目錄要使用 rm r 5,使用者使用的指令是根據path變數所指定的目錄去搜尋的 6,不同身份系統預設的path並不相...

Linux學習筆記 檔案與目錄管理

cd 移動到指定目錄下 pwd 顯示目前所在的目錄 mkdir 建立乙個新的目錄 rmdir 刪除乙個空的目錄 ls 顯示當前目錄下所有的目錄和檔案 rm 刪除檔案或目錄 mv 移動檔案與目錄,或更名 cd 相對路徑或絕對路徑 最重要的就是目錄的絕對路徑與相對路徑,還有一些特殊目錄的符號囉!cd d...

Linux 檔案與目錄管理

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