我有以下文件:
A B 1990
A C 2001
A C 2013
A B 2001
B C 2013
A D 2001
A D 2014
Run Code Online (Sandbox Code Playgroud)
我需要计算重复对(在第一列和第二列中),并为每个这样的对分配第三列中的最低值。对于我的玩具文件,输出应该是:
A B 2 1990
A C 2 2001
A D 2 2001
B C 1 2013
Run Code Online (Sandbox Code Playgroud)
例如,pairA B
出现两次,第一次为 1990,第二次为 2001,因为 1990 < 2001 我们将 1990 分配给这个计数。
我想知道如何使用 Linux 工具(Bash、AWK、Perl)来做到这一点。任何想法/指针将不胜感激。
我有一个需要以下参数的 Perl脚本:
count.pl OUTPUT_FILE INPUT_FILE
Run Code Online (Sandbox Code Playgroud)
我想要做的是使用进程替换而不是显式指定 INPUT_FILE,例如:
count.pl count.txt <(cat test.txt)
Run Code Online (Sandbox Code Playgroud)
但是,脚本似乎没有收到来自进程替换的任何输入。
我做错了什么?
我有一个文本文件A
,其中包含我想从文本文件中删除的行号B
。例如,文件A.txt
包含行
1
4
5
Run Code Online (Sandbox Code Playgroud)
和文件B.txt
包含行
A
B
C
D
E
Run Code Online (Sandbox Code Playgroud)
结果文件应该是:
B
C
Run Code Online (Sandbox Code Playgroud)
当然,这可以手动完成
sed '1d;4d;5d' B.txt
Run Code Online (Sandbox Code Playgroud)
但我想知道如何在不手动指定行号的情况下做到这一点。