我正在尝试运行一个脚本来识别文件中的所有完整ID。完整ID将包含“b”或“c”,后跟6个数字。 (即b028888)我有一个文件在一行上有超过1个ID,还有一些部分ID。这是文件内容:
以下是一些ID的列表
b028888 c948372
c039481 b0493
c34
b016396
c456039
b0291
b193
让我们看看这个蠢事是否有效!
我拥有的命令是:
grep "^[bc][0-9][0-9][0-9][0-9][0-9][0-9]" ID.txt
它只返回该行的第一个匹配,然后跳到下一行。有什么想法吗?
答案 0 :(得分:0)
这正是grep
应该做的事情。如果id以空格为界,您可以使用:tr ' ' \\n <ID.text | grep ...
将每个id放在一个单独的行上。
答案 1 :(得分:0)
+1到tr,如果你想要也可以。
cat ./poop | tr ' ' \\n | grep -o "^[bc][0-9][0-9][0-9][0-9][0-9][0-9]"