linux文件\文件夾操作常用指令
文件夾權限
-
r–read 讀權限
-
w–write 寫權限
-
x–execute 執行
-
d rwx rwx rwx
- d – 代表文件類型 : d代表文件夾 ;- 代表普通文件; c 代表硬件字符設備; b代表硬件塊設備; s代表管道文件; l 代表軟鏈接文件;
- 第一組rwx – 創建文件的用戶的權限;
- 第二組rwx – 文件的所屬組的權限;
- 第三組rwx – 其他用戶的權限;
文件管理
- ls
- -a 顯示指定目錄下所有子目錄與文件,包括隱藏文件
- -l 以列表的方式顯示文件的詳細信息
- -h 配合-l以人性化的方式顯示文件的大小 (按照Mb的方式顯示大小)
- ll 等價於 ls -all
- 通配符
- * 匹配任意多個字符 a* 一個以上 256以下的字符
- ?匹配任意一個字符 a? 兩個字符 且以a 開頭
- [a-z] 區間法 匹配a到z的所有字符 只能確定一個字符
- [abcde] 窮舉法 匹配abcde字符 只能確定一個字符
- \* 轉義
輸出重定向
-
輸出重定向 > 新的輸出會覆蓋原有的
- ls > ls.txt 將ls的結果輸出到ls.txt中
-
附加重定向 >> 在文件的末尾追加
分屏顯示 more
- | 管道命令 一個命令的輸出可以通過管道作爲另一個命令的輸入
- ls | more
刪除
- rm
- -r 遞歸刪除刪除 rm -r 可用來刪除含有文件的文件夾
- -i 交互式刪除 刪除前會有詢問
- -f 強制刪除 忽略此文件是否存在
創建目錄
- mkdir mkdir /test/test1 -p 遞歸創建文件夾
鏈接文件
- 硬鏈接 ln 源文件 鏈接文件 修改源文件,鏈接文件也會改變(與拷貝的區別)
- 軟鏈接 ln -s 源文件 鏈接文件
查看或者合併文件內容
- 查看文件內容 cat 1.txt
- 合併文件內容 cat 1.txt 2.txt >3.txt
文本搜索
- grep [- 選項] 搜索內容 文件
- -i 忽略大小寫
- -n 顯示行號
- -v 取反
參數 | 含義 |
---|---|
^a | 行首,搜尋以 m開頭的行 grep -n ‘^a’ 1.txt |
ke$ | 行尾,搜尋以 ke 結束的行 grep -n ‘ke$’ 1.txt |
[Ss]igna[Ll] | 匹配 [] 裏中一系列字符中的一個搜尋匹配單詞signal、signaL、Signal、SignaL的行 grep -n ‘[Ss]igna[Ll]’ 1.txt |
. (點) | 匹配一個非換行符的字符 匹配 e 和 e 之間有任意一個字符,可以匹配 eee,eae,eve, 但是不匹配 ee,eaae grep -n ‘e.e’ 1.txt |
統計行數或者字數
- wc
選項 | 含義 |
---|---|
-l | 統計行數 |
-w | 統計字數。一個字被定義爲由空白、跳格或換行字符分隔的字符串。 |
-c | 統計字節數 |
-m | 統計字符數。這個標誌不能與 -c 標誌一起使用。 |
查找文件
- find
命令 | 含義 |
---|---|
find ./ -name test.sh | 查找當前目錄下所有名爲test.sh的文件 |
find ./ -name ‘*.sh’ | 查找當前目錄下所有後綴爲.sh的文件 |
find ./ -name “[A-Z]*” | 查找當前目錄下所有以大寫字母開頭的文件 |
find /tmp -size 2M | 查找在/tmp 目錄下等於2M的文件 |
find /tmp -size +2M | 查找在/tmp 目錄下大於2M的文件 |
find /tmp -size -2M | 查找在/tmp 目錄下小於2M的文件 |
find ./ -size +4k -size -5M | 查找當前目錄下大於4k,小於5M的文件 |
find ./ -perm 0777 | 查找當前目錄下權限爲 777 的文件或目錄 |
拷貝 cp
- cp
選項 | 含義 |
---|---|
-a | 該選項通常在複製目錄時使用,它保留鏈接、文件屬性,並遞歸地複製目錄,簡單而言,保持文件原有屬性。 |
-f | 刪除已經存在的目標文件而不提示 |
-i | 交互式複製,在覆蓋目標文件之前將給出提示要求用戶確認 |
-r | 若給出的源文件是目錄文件,則cp將遞歸複製該目錄下的所有子目錄和文件,目標文件必須爲一個目錄名。 |
-v | 顯示拷貝進度 |
移動文件
- mv
選項 | 含義 |
---|---|
-f | 禁止交互式操作,如有覆蓋也不會給出提示 |
-i | 確認交互方式操作,如果mv操作將導致對已存在的目標文件的覆蓋,系統會詢問是否重寫,要求用戶回答以避免誤覆蓋文件 |
-v | 顯示移動進度 |
獲取文件類型
- file a.txt
歸檔管理 tar 包
- tar [參數] 打包文件名 文件
參數 | 含義 |
---|---|
-c | 生成檔案文件,創建打包文件 |
-v | 列出歸檔解檔的詳細過程,顯示進度 |
-f | 指定檔案文件名稱,f後面一定是.tar文件,所以必須放選項最後 |
-t | 列出檔案中包含的文件 |
-x | 解開檔案文件 |
-z | 調用gzip實現了一個壓縮的功能,實行一個先打包後壓縮的過程 |
- f 一定要在最後,其他順序隨意
文件壓縮解壓
gzxip
- tar與gzip命令結合使用實現文件打包、壓縮。
- tar只負責打包文件,但不壓縮,用gzip壓縮tar打包後的文件,其擴展名一般用xxxx.tar.gz。
- gzip [選項] 被壓縮文件
選項 | 含義 |
---|---|
-d | 解壓 |
-r | 壓縮所有子目錄 |
- tar這個命令並沒有壓縮的功能,它只是一個打包的命令,但是在tar命令中增加一個選項(-z)可以調用gzip實現了一個壓縮的功能,實行一個先打包後壓縮的過程。
- 壓縮用法:tar cvzf 壓縮包包名 文件1 文件2 …
- 解壓到指定目錄:-C (大寫字母“C”)
bzip2
- tar與bzip2命令結合使用實現文件打包、壓縮(用法和gzip一樣)。
- tar只負責打包文件,但不壓縮,用bzip2壓縮tar打包後的文件,其擴展名一般用xxxx.tar.bz2。
- 在tar命令中增加一個選項(-j)可以調用bzip2實現了一個壓縮的功能,實行一個先打包後壓縮的過程。
- 壓縮用法:tar cjvf 壓縮包包名 文件…(tar jcvf bk.tar.bz2 *.c)
- 解壓用法:tar xjvf 壓縮包包名 (tar jxvf bk.tar.bz2)
zip、unzip
- 通過zip壓縮文件的目標文件不需要指定擴展名,默認擴展名爲zip。
- 壓縮文件:zip [-r] 目標文件(沒有擴展名) 源文件
- 解壓文件:unzip -d 解壓後目錄文件 壓縮文件
PS:傳智黑馬課程學習筆記