进阶Linux大佬的奠基石
生活随笔
收集整理的這篇文章主要介紹了
进阶Linux大佬的奠基石
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
進階Linux大佬的奠基石
- 1、統計目錄及文件空間占用情況:du
- 1-1、格式
- 1-2、常用選項
- 1-3、示例
- 2、創建新目錄:mkdir
- 2-1、格式
- 2-2、示例
- 3、創建空文件:touch
- 4、創建鏈接文件:ln
- 4-1、ln
- 4-2、軟鏈接與硬鏈接
- 4-3、軟鏈接與硬鏈接的區別
- 5、復制文件或目錄:cp
- 6、刪除文件或目錄:rm
- 7、移動文件或目錄:mv
- 8、批量修改文件名:rename
- 9、查找命令文件存放目錄:which
- 10、查找文件或目錄:find
- 10-1、查找文件或目錄
- 10-2、常用查找條件類型
- 10-3、使用find實現多個查找條件
- 10-4、find之exec用法
- 11、執行命令的優先級
1、統計目錄及文件空間占用情況:du
1-1、格式
1-2、常用選項
| -a | 統計磁盤空間占用時包括所有的文件,而不是僅僅只統計目錄 |
| -h | 以更人性化的方式(默認以kB計數,但不顯示單位)顯示出統計結果 |
| -s | 只統計所占空間總的大小,而不是統計每個子目錄、文件的大小 |
| –max-depth=n | 統計所有小于等于第n層的目錄的總大小 |
- 注:-a與-s不能同時使用
1-3、示例
統計出 /var/log 目錄中子目錄的大小 du -h --max-depth=1 /var/log/2、創建新目錄:mkdir
2-1、格式
2-2、示例
3、創建空文件:touch
- 更新文件的時間標記
- 經常用于創建多個新的空文件夾
- 示例:
4、創建鏈接文件:ln
4-1、ln
-
為文件或目錄建立鏈接文件,類似于Windows系統的快捷方式
-
鏈接文件類型
- 軟鏈接(又稱為符號鏈接)
- 硬鏈接
-
示例
4-2、軟鏈接與硬鏈接
- 在Linux中,文件名和文件的數據是分開的
- 在Linux中,只有文件的 硬鏈接數=0 才會被刪除
- 使用 ls -l 可以查看一個文件的硬鏈接數
- 在日常工作中,幾乎不會建立文件的硬鏈接。
4-3、軟鏈接與硬鏈接的區別
| 刪除源文件后 | 失效 | 仍然可用(文件占用空間與源文件相同) |
| 適用范圍 | 適用于文件文件或目錄 | 僅適用于文件 |
| 保存位置 | 與源文件可在不同的文件系統中 | 必須與源文件在同一個文件系統(即同一個分區)中 |
| 與源文件的關系 | 相當于快捷方式 | 相當于給文件起個別名 |
| inode號碼 | inode號碼不同 | inode號碼相同 |
- 當一個文件擁有多個硬鏈接時,對文件內容修改,會影響到所有文件名;但是刪除一個文件名,不影響別的文件名的訪問。刪除一個文件名,只會使得"硬鏈接數"減1。
- 需要注意的是不能對目錄做硬鏈接。
5、復制文件或目錄:cp
- 將需要復制的文件或目錄(源)重建一份,并保存為新的文件或目錄
- 常用選項
- -f :覆蓋目標同名文件或目錄時不進行提醒,而直接強行復制
- -i :覆蓋目標同名文件或目錄時提醒用戶確認
- -p :復制時保持源文件的權限、屬主及時間標記等屬性不變
- -r :復制目錄時必須使用此選項,表示遞歸復制所有文件及子目錄
- 注:復制多個文件或目錄時,目標位置必須是目錄,且目標目錄必須已存在
6、刪除文件或目錄:rm
- 刪除指定的文件或目錄
- 常用選項
- -f :刪除文件或目錄時不進行提醒,而直接強制刪除
- -i :刪除文件或目錄時提醒用戶確認。(y表示刪除,n表示不刪除)
- -r :刪除目錄時必須使用此選項,表示遞歸刪除整個目錄樹(應謹慎使用)
- 注:不要直接刪除系統中已有的目錄或配置文件,以避免出現意外故障
- 示例
7、移動文件或目錄:mv
-
將指定的文件或目錄轉移位置
-
如果目標位置與源位置相同,則相當于執行重命名操作
-
示例
8、批量修改文件名:rename
-
mv命令只能對單個文件重命名,可使用rename批量修改文件名
-
格式
-
示例
9、查找命令文件存放目錄:which
- 搜索范圍由環境變量PATH決定(echo $PATH)
- 示例
- 使用which查找內部命令時,將找不到對應的程序
10、查找文件或目錄:find
10-1、查找文件或目錄
采用遞歸方式,根據目標的名稱、類型、大小等不同屬性進行精細查找
10-2、常用查找條件類型
| 按名稱查找 | -name | 根據目標文件的名稱進行查找,允許使用"*“及”?"通配符 |
| 按文件大小查找 | -size | 根據文件的大小進行查找 一般使用"+"、"-"號設置超過或小于指定的大小作為查找條件 常用的容量單位包括kB、MB、GB |
| 按文件屬性查找 | -user | 根據文件是否屬于目標用戶進行查找 |
| 按文件類型查找 | -type | 根據文件的類型進行查找 文件的類型包括普通文件(f)、目錄(d)、塊設備文件(b)、字符設備文件(c)等 塊設備文件(b):成塊讀取數據的設備(硬盤、內存、光驅) 字符設備文件(c):按單個字符讀取數據的設備(鍵盤、鼠標) |
10-3、使用find實現多個查找條件
- 各表達式之間使用邏輯運算符
- “-a” 表示而且 ##表示需要同時滿足
- “-o” 表示或者 ##表示只需要滿足其中一個
- 示例
10-4、find之exec用法
- -exec 參數后面跟的是Linux命令,它是以分號";"為結束標志,由于各個系統中分號會有不同的意義,因此在分號前面加上反斜杠轉義符“\”。
{}代表前面find查找出來的文件名。 - find 命令匹配到了當前目錄下的所有普通文件,并在 -exec 選項中使用 ls-l 命令將它們列出
11、執行命令的優先級
- 第一優先級
指定路徑的命令。絕對路徑 /root/pwd.sh 或者相對路徑 ./pwd.sh - 第二優先級
別名指定的命令 alias pwd=/root/pwd.sh - 第三優先級
內部命令 - 第四優先級
hash 命令。
Linux系統下會有一個hash表,當你剛開機時這個hash表為空,每當你執行過一條命令時, hash表會記錄下這條命令的路徑,就相當于緩存一樣。第一次執行命令shell解釋器默認的會從PATH路徑下尋找該命令的路徑,當你第二次使用該命令時,shell解釋器首先會查看hash表,沒有該命令才會去PATH路徑下尋找。hash表能提高命令的調用速率。 - 第五優先級
通過 PATH 定義的查找順序查找 - 如果以上都找不到,就會報“未找到命令…”的錯誤
總結
以上是生活随笔為你收集整理的进阶Linux大佬的奠基石的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 内存加压:如何选择适合自己的内存配置?
- 下一篇: Linux简介之——目录与文件管理