~ grep "a*" test_rule.txt # 匹配全部內容,包括空白行linux
~ grep "aa*" test_rule.txt # 匹配至少包含兩個連續 a 的字符串正則表達式
~ grep "aaa*" test_rule.txt # 匹配最少包含兩個連續a的字符串shell
~ grep "aaaa*" test_rule.txt # 匹配最少包含四個個連續a的字符串編程
~ grep "s..d" test_rule.txt # 「 s..d 」會匹配在 s 和 d 這兩個字母之間必定有兩個字符的單詞編輯器
~ grep "s.*d" test_rule.txt # 匹配在 s 和 d 字母之間有任意字符spa
~ grep ".*" test_rule.txt # 匹配全部內容3d
~ grep "^M" test_rule.txt # 匹配以大寫「 M 」開頭的行blog
~ grep "n$" test_rule.txt # 匹配以小寫「 n 」結尾的行排序
~ grep -n "^$" test_rule.txt # 會匹配空白行字符串
~ grep " s[ao]id " test_rule.txt # 匹配 s 和 i 字母中,要不是 a 、要不是
~ grep "[0-9]" test_rule.txt # 匹配任意一個數字
~ grep "[a-z]" test_rule.txt # 匹配用小寫字母開頭的行
~ grep "^[^a-z]" test_rule.txt # 匹配不用小寫字母開頭的行
~ grep "^[^a-zA-Z]" test_rule.txt # 匹配不用字母開頭的行
~ grep "\.$" test_rule.txt # 匹配使用「 . 」結尾的行
~ grep "a\{3\}" test_rule.txt # 匹配 a 字母連續出現三次的字符串
~ grep "[0-9]\{3\}" test_rule.txt # 匹配包含連續的三個數字的字符串
~ grep "^[0-9]\{3,\}[a-z]" test_rule.txt # 匹配最少用連續三個數字開頭的行
~ grep "sa\{1,3\}i" test_rule.txt # 匹配在字母 s 和字母 i 之間有最少一個 a ,最多三a
[options]
-f 行號: 提取第幾列
-d 分隔符: 按照指定分隔符分割列
4)example侷限性(沒法匹配空格)
printf ‘ 輸出類型 輸出格式 ’ 輸出內容
print : print 會在每一個輸入以後自動加入一個換行符(linux 默認沒有 print 命令)
printf :是標準格式輸出命令,並不會手動加入換行符,若是須要換行,須要手工加入換行符
example:
條件:通常使用關係表達式做爲條件
x>=10 大於等於
x > 10 判斷變量 x是否大於10
x<=10 小於等於
動做
格式化輸出
流程控制語句
1)、簡介:
sed 是一種幾乎包括在全部 UNIX 平臺 (包括 linux)的輕量級流編輯器。
sed 主要是用來將數據進行選取,替換,刪除,新增的命令。
2)、用法:
sed【options】【actions】文件名
【options】
- n :通常 sed 命令會把全部數據都輸出到屏幕,若是加入此選擇,則只會吧通過 sed 命令處理的行輸出到屏幕
- e :容許對輸入數據應用多條 sed 命令編輯
- i : 用 sed 的修改結果直接修改讀取數據的文件,而不是由屏幕輸出
【actions】
a \ :追加,在當前行後添加一行或多行。
c \ :行替換,用 c 後面的字符串替換原數據行。
i \ :插入,在當前行插入一行或多行。
d:刪除,刪除制定的行。
p:打印,輸出指定的行。
s:字符串替換,用一個字符串替換另外一個字符串。「 s/old/new/g 」
sort [選項] 文件名
sort --help
wc --help
寫一個腳本 判斷一個文件是否有讀寫執行權限 要能判斷出是 用戶 組 和其餘人