LINUX删除指定字段不匹配的行脚本怎么写

2025-05-09 19:28:12
推荐回答(3个)
回答1:

用 sed 实现比较麻烦,可以用 awk:

 awk -F"|" '{if($8 ~ /[0-9]{4}-[0-9]{2}-[0-9]{2}\ [0-9]{2}:[0-9]{2}:[0-9]{2}/) {print}}' Input > Output

Input 是需要处理的文件, Output 是输出文件。awk 不提供直接修改文件的功能。[0-9]{4} 是正则表达式表示4个数字,其它类似。

回答2:

awk -F"|" '{if($8~/.*-*-.*:.*:/) print}' 1.txt

回答3:

这事awk足够了。perl大材小用。