avatar
请教一个文件处理的问题# Unix - 噫吁兮,危乎高哉
x*e
1
有什么简单得unix命令能做这个事情啊:
如果我有两个文件
file1是这样的
17408 rs17685809 20 - A G YES reverse
56328 rs1954267 20 + A C YES same
57272 rs6038037 20 - C G YES reverse
82476 rs6055084 20 + C T YES same
86004 rs6055356 20 + C G YES same
。。。。。。。。。。。。。。。。。
。。。。。。。。。。。。。。。。。
file2 是这样的:
17408 rs17685809 SNP_A-2163138 T
57272 rs6038037 SNP_A-2255741 G
82476 rs6055084 SNP_A-2168395 T
85933 rs1434790 SNP_A-2188235 C
86004 rs6055356 SNP_A-4193827 G
...............................
。。。。。。。。。。。。。。
这两个文件的各个行都是已经按照第一个列排序过的
现在我
avatar
c*t
2
没有。要写 script 。

【在 x****e 的大作中提到】
: 有什么简单得unix命令能做这个事情啊:
: 如果我有两个文件
: file1是这样的
: 17408 rs17685809 20 - A G YES reverse
: 56328 rs1954267 20 + A C YES same
: 57272 rs6038037 20 - C G YES reverse
: 82476 rs6055084 20 + C T YES same
: 86004 rs6055356 20 + C G YES same
: 。。。。。。。。。。。。。。。。。
: 。。。。。。。。。。。。。。。。。

avatar
g*i
3
写个小程序应该可以很快搞定的吧?
avatar
f*g
4
Here you go, very easy one:
make a file name bbs.awk:
NR==FNR{_[$1]; next} $1 in _{print $0}
Then run it as:
awk -f bbs.awk file1 file2
Let me know if you have any questions.

【在 x****e 的大作中提到】
: 有什么简单得unix命令能做这个事情啊:
: 如果我有两个文件
: file1是这样的
: 17408 rs17685809 20 - A G YES reverse
: 56328 rs1954267 20 + A C YES same
: 57272 rs6038037 20 - C G YES reverse
: 82476 rs6055084 20 + C T YES same
: 86004 rs6055356 20 + C G YES same
: 。。。。。。。。。。。。。。。。。
: 。。。。。。。。。。。。。。。。。

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。