
数值比较 [ 整数 1 *** 作符 整数 2 ]
[ 1 -gt 10 ] 大于
[ 1 -lt 10 ] 小于
[ 1 -eq 10 ] 等于
[ 1 -ne 10 ] 不等于
[ 1 -ge 10 ] 大于等于
[ 1 -le 10 ] 小于等于
注:建议
在(()) 中使用
==或=
!=
>
>=
<
<=
[]符号
-a 并且
-o 或者
[[]]
&&并且
|| 或者
=检测两个字符串是否相等,相等返回 true。
!= 检测两个字符串是否不相等,不相等返回 true。
-z 检测字符串长度是否为0,为0返回 true。
-n 检测字符串长度是否不为0,不为0返回 true。
正则需要使用条件符号 [[]]
=~表示正则匹配
小结:
YDAY=$(date +"%Y%m%d" -d "-1 days")TDAY=$(date +"%Y%m%d")
awk -v YDAY=$YDAY -v TDAY=$TDAY '
NR==1 {
if(substr($0,20,8)==YDAY)
$0=substr($0,1,19) TDAY substr($0,28)
if(substr($0,34,8)==YDAY)
$0=substr($0,1,33) TDAY substr($0,42)
}
/^TH/{
if(substr($0,21,8)==YDAY)
$0=substr($0,1,20) TDAY substr($0,29)
}
{print }' 文件名
#!/bin/bashread -p "请输入目的内容:" varchar
grep "$varchar" filename && sed -i "/$varchar/d" filename || echo $varchar >>filename
exit
详细解释:
第1行:申明/解释脚本用的是bash
第2行:用read读取你输入的内容,然后复制给varchar
第3行:在文件filename中查找刚刚你输入的内容,&&表示如果找到了内容就执行后面的命令,||表示如果没找到则执行后面的内容;那么完整解释就是,当前面查找到你输入的内容时,则执行sed -i "***/d" 删除命令,而没有查找到则执行||后面的追加内容命令。
第4行:退出脚本
Ps:filename需要改成你说的那个文件的名字及路径。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)