繁体   English   中英

grep不与正则表达式

[英]grep NOT with regex

我试图从FASTA文件中保存不包含以下任何字符的行: ACGT以及不以>开头的行。 我以为正则表达式[^ACGT]可以解决问题,但输出为空行

xx@LAPTOP-OP4UUVLH:~$ cat test.txt
>
TTTCCTTTCTGTGATTCCTCAAGCCCCATGGACTTACCGCTTTACCAACAACTGCAGCTAAGCCCGTCTT
CCCCAAAGACGGACCAATCCAGCAGCTTCTACTGCTAYCCATGCTCCCCTCCCTTCGCCGCCGCCGACGC

xx@LAPTOP-OP4UUVLH:~$ grep -v "^>" test.txt | grep "[^ACTG]"

xx@LAPTOP-OP4UUVLH:~$

请注意, test.txt的最后一行包含Y字符,因此应将其打印出来。 为什么不只打印与Y的行?

我正在Windows 10中运行ubuntu应用程序。

xx@LAPTOP-OP4UUVLH:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 16.04.3 LTS
Release:        16.04
Codename:       xenial

对于文件( test.txt ):

>
TTTCCTTTCTGTGATTCCTCAAGCCCCATGGACTTACCGCTTTACCAACAACTGCAGCTAAGCCCGTCTT
CCCCAAAGACGGACCAATCCAGCAGCTTCTACTGCTAYCCATGCTCCCCTCCCTTCGCCGCCGCCGACGC

您提供的命令( grep -v "^>" test.txt | grep "[^ACTG]" )显示:

CCCCAAAGACGGACCAATCCAGCAGCTTCTACTGCTAYCCATGCTCCCCTCCCTTCGCCGCCGCCGACGC

如果输出为空,则检查尾随空格。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM