awk -v t="today" -v y="yesterday" '{if(index($0,t)||index($0,y)){print $0}}'/tmp/dailycheck/thelog

来源:学生作业帮助网 编辑:作业帮 时间:2024/06/13 00:46:54
awk -v t=
xRN`hJ^P6й5j,Џ+C8(U+-#o}yҙ1olF@؎ +|!O2<}z>Oœgg,c=`^jȾ ˥S'~ 3{pD.گxMTQ#?j!!,Eh!B1E.jL0Kfc{ U}a1k5`tYO*YrtoI2xznsF^K2Гz*Rg (2g @A7$t.C1$O6Aì"K$#RʈTѳo; dPYC7 ɱ5gb.4":`)KA3a+Af{8dڄkt#,&ӥBeH{`Z:j"ŖL!M/}L

awk -v t="today" -v y="yesterday" '{if(index($0,t)||index($0,y)){print $0}}'/tmp/dailycheck/thelog
awk -v t="today" -v y="yesterday" '{if(index($0,t)||index($0,y)){print $0}}'/tmp/dailycheck/thelog

awk -v t="today" -v y="yesterday" '{if(index($0,t)||index($0,y)){print $0}}'/tmp/dailycheck/thelog
awk的-v选项表示给变量赋值.即,在开始阶段定义好变量t和y的值.

index() 是 awk 的内置函数,语法是这样的:
index(string, substring)
返回子字串substring在字符串string中的位置(index);若没有找到,则返回0.
awk是按行处理文本的,$0就表示当前待处理的一行内容.

所以,综上所述,意思很明确了.
就是在/tmp/dailycheck/thelog文件的每一行中查找"today"或"yesterday",如果包含这两个中的任一个,就打印该行内容到标准输出(一般是屏幕).