我有一个文件,比如说 file1.txt
ENSG00000223116 AL157931.1
ENSG00000233440 HMGA1P6
ENSG00000207157 RNY3P4
ENSG00000229483 LINC00362
ENSG00000252952 RNU6-58P
我有另一个文件 file2.txt
ENSG00000223117 0 0
ENSG00000223116 0 0
ENSG00000233440 1.71449394 50
我想比较 file1 和 file2 的 ENSG 名称并获取输出,如果文件 1 中的 ENSG 名称存在于 file2 中,则输出应该是
ENSG00000223116 0 0 AL157931.1
ENSG00000233440 1.71449394 50 HMGA1P6
我可以为此编写一个 perl 脚本,但我只想在命令行上执行此操作。如何做呢?
问候
答案1
如果您之前对文件进行了排序,您可以通过一种简单的方式进行:
$ join file2 file1
ENSG00000223116 0 0 AL157931.1
ENSG00000233440 1.71449394 50 HMGA1P6
要对文件进行排序,只需执行以下操作:
sort file1.txt > file1
sort file2.txt > file2