" 2017年9月4日"" d"" 0015"" 1"" 0015"," 08080000",60371,18923315.66
这是我的文件abc中的示例记录,我想从中删除所有以02开头的记录,如 -
" 02080000"
" 02100000"
等...(请考虑"在此专栏开始时),我尝试了awk但它不能在我的Linux上工作 -
awk -F"," ' $ 6!= / ^" 02 /' abc> abc_correct
答案 0 :(得分:1)
将!=
更改为!~
两个运算符~
和!~
执行正则表达式比较
awk -F"," '$2 !~ /^"02/' infile >outfile
第6栏
awk -F"," '$6 !~ /^"02/' infile >outfile
可能有用:
Awk中的比较运算符用于比较数字的值 或字符串,它们包括以下内容:
>
- 大于<
- 少于>=
- 大于或等于<=
- 小于或等于==
- 等于!=
- 不等于some_value ~ /regexp/
- 如果some_value与regexp匹配,则为true- 不匹配,则为true
some_value !~ /regexp/
- 如果some_value与regexp
答案 1 :(得分:0)
您可以使用
删除位置2和3上02
的行
grep -vE '^.02 abc
v
- 跳过行
E
- 表达式
^
- 行的开头
.
- 任何角色