我有一个大的txt文件,看起来像这样(标签分隔):
147 186741 2S74M -162
147 647172 1S75M -221
163 584665 74M2S 271
147 658416 5S65M6S -272
我希望awk
查看第3列并在第2或第3位置遇到字符“S”时提取整行。或者,丢弃字符“S”位于该字符串最后位置的所有行。
提前谢谢你, TP
答案 0 :(得分:1)
短 awk 方法:
awk '$3~/^.(S|.S).*[^S]$/' file
输出:
147 186741 2S74M -162
147 647172 1S75M -221
答案 1 :(得分:0)
awk '$3 ~ /S$/ {next} $3 ~ /^..?S/' file
第一部分跳过S是第三个字段的最后一个字符的行 当S是第2或第3个字符时,下一部分打印该行。
答案 2 :(得分:0)
你需要的只是:
html {
background: url(images/aurora.jpg) no-repeat center center fixed;
-webkit-background-size: contain;
-moz-background-size: contain;
-o-background-size: contain;
background-size: contain;
}
答案 3 :(得分:0)
在这里再尝试一下awk。
awk '(substr($3,2,1)=="S" || substr($3,3,1)=="S") && substr($3,length($3))!="S"' Input_file