>[success] # 在文件當中匹配符合條件的字符串
1. `grep`命令 在文件當中**搜索符合條件的字符串**,**會對文件的每一行按照給定的模式(pattern)進行匹配查找(可以使用正則)**
2. `grep [-n] 關鍵字 文件路徑`
* 選項`-n`,可選,表示在結果中顯示匹配的行的行號
* 參數,關鍵字,必填,表示過濾的關鍵字,帶有空格或其它特殊符號,建議使用""將關鍵字包圍起來
* 參數,文件路徑,必填,表示要過濾內容的文件路徑,**可作為內容輸入端口**(查看管道章節)
>[danger] ##### 參數
1. `-i` 忽略大小寫
2. `-v` 排除指定字符串
3. `-c` 只輸出匹配行的計數(統計個數)。
4. `-n` 顯示匹配行及行號。
5. `-w` 顯示整個單詞(模糊搜索時候)
6. `-r` 遞歸查詢
>[danger] ##### 使用
1. `grep "b" a.txt` -- 找到a.txt 中b 類似在瀏覽器使用ctrl+f
2. `grep -v "b" a.txt`
3. `grep "-i" f a.txt`
| 元字符 | 作用 | 示例 |
| --- | --- | --- |
| \* | 前一個字符匹配 0 次或任意多次 | grep 1\* reg.txt |
| . | 匹配除換行符外的任意一個字符 | grep . reg.txt |
| ^ | 匹配行首。例如,^hello 會匹配以 hello 開頭的行 | grep ^a reg.txt |
| $ | 匹配行尾。例如,hello& 會匹配以 hello 結尾的行 | grep a$ reg.txt |
| \[\] | 匹配屮柄號屮指定的任意一個字符,而且只匹配一個字符。 例如.\[aoeiu\]匹配任意一個元音字母, \[0-9\] 匹配任意一位數字, \[a-z\]\[0-9\] 匹配由小寫字母和一位數字構成的兩位字符 | grep ab\[bc\]c reg.txt |
| \[^\] | 匹配除中括號中的字符以外的任意一個字符。例如,\[^0-9\] 匹配任意一位非數字字符, \[^a-z\] 匹配任意一位非小寫字母 | grep a\[^fg\]c reg.txt |
| \\ | 轉義符,用于取消特殊符號的含義 | grep \\.$ reg.txt |
| {n} | 表示其前面的字符恰好出現 n 次。例如,\[0-9\]{4} 匹配4位數字,\[1\]\[3-8\]\[0-9\]{9} 匹配手機號碼 | grep "a{1}" reg.txt |
| (n,} | 表示其前面的字符出現不少于 n 次。例如,\[0-9\]{2,} 匹配兩位及以上的數字 | grep "a{1,}" reg.txt |
| {n,m} | 表示其前面的字符至少出現 n 次,最多出現 m 次。例如,\[a-z\]{6,8} 匹配 6?8 位的小寫字母 | grep "a{2,3}" reg.txt |
- 安裝-VMware 虛擬機
- 遠程連接
- Windows -- wsl
- Linux -- 認識 Linux 和操作系統
- Linux -- Linux 和 windows 對比
- Linux -- 命令提示符
- Linux -- 文件目錄
- Linux -- 文件類型
- Linux -- 絕對和相對路徑
- Linux -- 常用快捷鍵
- Linux -- 三種幫助命令
- 幫助命令 -- man
- 幫助命令 -- help
- 幫助命令 -- info
- Linux -- 指令
- alias -- 設置別名
- history -- 查看歷史命令
- cd -- 更改目錄(切換文件夾)
- pwd -- 打印目錄
- ls -- 列出文件內容
- mkdir -- 創建文件夾
- rmdir -- 刪除一個空的目錄
- touch -- 創建普通文件/修改時間
- cp -- 復制粘貼
- mv -- 移動和重名
- rm -- 刪除
- cat/tac -- 查看純文本文件
- more/less -- 分頁讀取信息
- head -- 從文本開頭查看
- tail -- 從文本結尾查看
- cut -- 提取片段
- sort -- 排序
- uniq -- 去重
- wc -- 統計文件的行數、單詞、字節數
- tr -- 替換、縮減或刪除字符
- find -- 文件查找
- grep -- 文件當中匹配字符
- 管道 -- |
- locate -- 第三方文件查找
- whereis -- 查找二進制/源代碼文件 路徑
- which -- 查找環境變量
- 壓縮和解壓
- ln -- 鏈接
- wget -- 下載指定的url資源
- 重定向 -- << /< />/> >
- 邏輯控制 -- &&
- echo -- 輸出指定內容
- date/cal -- 查看日期和日歷
- Linux -- 進程管理
- Linux-- ps 指令
- vi/vim - 文本編輯器
- 更多
- Linux-- 開關機命令
- Liunx -- 退出登錄
- Linux-- 查看登錄用戶信息
- Linux -- 環境變量
- Linux -- 用戶
- Linux -- 文件管理
- 文件權限設置 -- chmod
- 更改文件的擁有者 -- chown
- 默認權限 -- umask
- Linux -- 用戶
- 新建/刪除用戶 -- useradd/userdel
- 修改用戶屬性 -- usermod/chage
- 新建/刪除用戶組 -- groupadd/groupdel
- 用戶切換 -- su/sudo
- 用戶/用戶組的配置文件
- 用戶家目錄被刪除解決
- last、 lastlog命令查看用戶詳細的登錄信息
- Linux -- shell
- Linux -- 管道符號
- shell -- 執行
- shell -- 變量
- shell -- 字符串
- shell -- 數組
- Shell -- declare 設置變量屬性
- shell -- 數學計算
- shell -- 變量作用域
- shell -- 位置參數變量
- shell -- read
- shell - if 語句
- shell -- test
- shell -- case
- Linux -- 循環
- Linux -- 軟件包管理