x****e 发帖数: 19 | 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
...............................
。。。。。。。。。。。。。。
这两个文件的各个行都是已经按照第一个列排序过的
现在我 |
c*****t 发帖数: 1879 | 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 : 。。。。。。。。。。。。。。。。。 : 。。。。。。。。。。。。。。。。。
|
g*********i 发帖数: 89 | |
f******g 发帖数: 13917 | 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 : 。。。。。。。。。。。。。。。。。 : 。。。。。。。。。。。。。。。。。
|