作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我需要删除某些 txt 文件中以“#”开头的行。但忽略标题的第一行。如何让 grep 忽略第一行并为其余行删除以 # 开头的任何行?
cat sample.txt
#"EVENT",VERSION, NAME
1,2,xyz
1,2,abc
1,2,asd
1,2,ert
#"EVENT",VERSION, NAME
1,2,xyz
1,2,abc
1,2,xyz
cat sample.txt | grep -v "^\s*[#\;]\|^\s*$" > "out.txt"
但这也删除了 header !
最佳答案
使用 sed:
sed '2,${/^#/d}' sample.txt
从第二行 (2
) 到最后一行 ($
):搜索 (/.../
) 开始的行 (^
) 和 #
并删除 (d
) 它们。 sed 的默认操作是打印当前行。
输出:
#"EVENT",VERSION, NAME1,2,xyz1,2,abc1,2,asd1,2,ert1,2,xyz1,2,abc1,2,xyz
关于linux - 如何让 grep 忽略第一行并处理其他行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55780121/
我是一名优秀的程序员,十分优秀!