反映另一个文件中的那种文件

时间:2014-06-16 14:37:29

标签: linux bash shell unix

我有两个文件,例如f1f2

f1有一个无法比较的项目列表(它们都是字母数字,每个都在各自的行上)。它的伴随文件f2有一个项目列表,可以在各自的行上进行比较。

我按相反顺序对f2进行了排序,以生成文件f3。我想在f1中反映这一点,以生成文件f4

示例:

f1

Dan
Sam
James

f2

3
1
2

f3(反向排序为f2):

3
2
1

我希望f4成为:

Dan
James
Sam

我希望这个例子说明了我想要实现的目标。

1 个答案:

答案 0 :(得分:5)

这是使用paste命令的快速而肮脏的方式。如果您的文件很简单,它应该可以工作。

% cat numbers.txt 
3
1
2
% cat names.txt 
Dan
Sam
James
% paste numbers.txt names.txt | sort -nr | awk '-F\t' '{print $2}'
Dan
James
Sam