[英]To remove undesired lines using linux command
我有一个以下形式的csv文件(1TB):
1 hi hello
2 users badges
abc def
3 questions
4 tags
Unanswered answered
每当我在行的开头有一个字符串时,我想删除该行,每当我在行的开头有一个数字(整数)时我想保留该行。 我希望输出格式如下:
1 hi hello
2 users badges
3 questions
4 tags
是否可以使用linux命令实现它。 我知道可以使用像python这样的编程语言实现这一点,但是可以使用cat和sed等来实现
sed '/^[^0-9].*/d' test.txt
这将删除文件test.txt中不以0-9开头的所有行
使用grep
过滤行:
$ cat > a_file
1 hi hello
2 users badges
abc def
3 questions
4 tags
Unanswered answered
$ grep '^ *[0-9]' a_file > a_file.modified
$ cat a_file.modified
1 hi hello
2 users badges
3 questions
4 tags
$ mv a_file.modified a_file
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.