通常,使用grep -no
每个匹配项时都有一个行号。例如,键入时,grep -no "[A|a]" chr22.fa
我期望:
$ grep -v ">" chr22.fa | grep -o -n "[A|a]" | head -n 17
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210201:A
210202:A
210202:A
但是,从最近开始,输出看起来像:
$ grep -v ">" chr22.fa | grep -o -n "[A|a]" | head -n 17
210201:A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
A
不管我要搜索什么,以及我正在处理哪个染色体txt文件,都是相同的问题。有谁知道为什么会出现这种不正确的格式?预先感谢您的帮助。
编辑:十六进制转储-C在短文件中具有随机字母顺序的结果:
00000000 41 41 41 41 41 41 41 41 41 41 0a 62 42 42 42 42 |AAAAAAAAAA.bBBBB|
00000010 41 41 41 0a 42 42 41 42 41 41 42 41 42 41 42 42 |AAA.BBABAABABABB|
00000020 41 42 41 0a 41 42 55 57 42 41 55 41 42 57 44 55 |ABA.ABUWBAUABWDU|
00000030 42 57 55 44 55 57 44 55 0a 41 48 55 44 48 47 55 |BWUDUWDU.AHUDHGU|
00000040 45 47 55 0a 68 65 69 66 68 69 65 68 66 0a 77 65 |EGU.heifhiehf.we|
00000050 68 66 69 68 77 65 66 0a 41 41 0a 68 73 65 66 69 |hfihwef.AA.hsefi|
00000060 68 48 41 0a |hHA.|
00000064
grep (BSD grep) 2.5.1-FreeBSD
行为不同于
grep (GNU grep) 3.40
BSD grep只会给您一次行号,而不是像GNU grep一样重复相同的行号
您可以使用安装GNU grep
brew install grep
如果您需要使用ggrep作为默认grep,则可以创建符号链接
ln -is $(which ggrep) /usr/local/bin/grep
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句