-
awk '條件1{動作1} 條件2{動作2}...' 文件名
條件(Pattern):
一般使用關(guān)系表達式作為條件
x?> 10 判斷變量 x 是否大于 10
x >= 10 大于等于
x <=10 小于等于
動作(Action):
格式化輸出
流程控制語句
查看全部 -
在 awk 命令的輸出中支持 print 和 printf 命令
print:print 會在每個輸出之后自動加入ー個換行符(Linux 默認(rèn)沒有 print 命令)
?printf:printf 是標(biāo)準(zhǔn)格式輸出命令,并不會自動加入換行符,如果需要換行,需要手工加入換行符
查看全部 -
printf?'%s'?$(cat?student.txt)
不調(diào)整輸格式printf?'%s\t?%s\t?%s\t?%s\n'?$(cat?student.txt)
調(diào)整格式輸出
查看全部 -
[root@localhost?~]#?printf?%s?1?2?3?5?6
[root@localhost?~]#?printf?%s?%s?%s?1?2?3?4?5?6
[root@localhost?~]#?printf?'%s?%s?%s'?1?2?3?4?5?6
[root@localhost?~]#?printf?'%s%s%s\n'?1?2?3?4?5?6
查看全部 -
printf '輸出類型輸出格式' 輸出內(nèi)容
輸出類型
%ns:輸出字符串。n 是數(shù)字指代輸出幾個字符
%ni:輸出整數(shù)。n 是數(shù)字指代輸出幾個數(shù)字
%m. nf:輸出浮點數(shù)。m 和 n 是數(shù)字,指代輸出的整數(shù)位數(shù)和小數(shù)位數(shù)
如 %8.2f 代表共輸出 8 位數(shù),其中 2 位是小數(shù),6 位是整數(shù)。
輸出格式:
\a:輸出警告聲音
\b:輸出退格鍵,也就是 Backspace 鍵
\f:清除屏幕
\n:換行
\r:回車,也就是 Enter 鍵
\t:水平輸出退格鍵,也就是 Tab 鍵
\v:垂直輸出退格鍵,也就是 Tab 鍵
查看全部 -
cut 命令的局限
df?-h?|?cut?-d?""?-f?1,3
查看全部 -
cut?-f?2?student.txt
cut?-f?2,4?student.txt
cut?-d?":"?-f?1,3?/etc/passwd
?
查看全部 -
[root@localhost?~]#?vi?student.txt?? ID???Name????gender??Mark 1????furong??F???????85? 2????fengj???F???????60 3????cang????F???????70
查看全部 -
[root@localhost?~]#?cut?[選項]?文件名
選項:
-f 列號:提取第幾列
-d 分隔符:按照指定分隔符分割列
查看全部 -
幾個例子
匹配日期格式 YYYY-MM-DD
[0-9]\{4\}-[0-9}\{2\}-[0-9]\{2\}
匹配 IP 地址
[0-9]\{1,3\}\.[0-9]\{1,3}\.[0-9]\{1,3\}\.[0-9]\{1,3\}\
查看全部 -
“\{n,m\}”匹配其前面的字符至少出現(xiàn) n 次,最多出現(xiàn) m 次
"sa\{1,3\}i"
匹配字母 s 和字母 i 之有最少ー個 a,最多三個 a
查看全部 -
“\{n,\}”表示其前面的字符出現(xiàn)不小于 n 次
"^[0-9]\{3,\}[a-z]"
匹最少用連續(xù)三個數(shù)字頭的行
查看全部 -
“\{n}”表示其前面的字符恰好出現(xiàn) n 次
"a\{3\}"
匹配 a 字連續(xù)現(xiàn)三次的字符串
“a\{3\}”表示字母 a 至少重復(fù) 3 次
"[0-9]\{3\}"
匹配包含連續(xù)的三個數(shù)字的字符串
查看全部 -
“\”轉(zhuǎn)義符
"\.$"
匹配使用“.”結(jié)尾的行
查看全部 -
“[^]”匹配除中括號的字符以外的任意一個字符
"^{^a-z}"
匹配不用小寫字母開頭的行
"^[^a-zA-Z]"
匹配不用字母開頭的行
查看全部
舉報