假设我有两个文件,如:
文件1:
Verrucomicrobiaceae
Porphyromonadaceae
Clostridium
Verrucomicrobiaceae
Clostridium
Bacteroidaceae
Clostridium
Verrucomicrobiaceae
Verrucomicrobiaceae
Verrucomicrobiaceae
Verrucomicrobiaceae
Clostridium
文件2:
Verrucomicrobiaceae
Porphyromonadaceae
Verrucomicrobiaceae
Porphyromonadaceae
Verrucomicrobiaceae
Verrucomicrobiaceae
Verrucomicrobiaceae
Verrucomicrobiaceae
我想计算以下内容:
我尝试使用comm
,cmp
和diff
,但他们无法完成该任务。
有没有可以做到这一点的linux命令?
答案 0 :(得分:0)
这很专业,标准工具可能不容易。我会编写一个程序进行比较,就像在Perl中一样:
#!/usr/bin/perl
open(IN1, "< file1");
open(IN2, "< file2");
$count1 = $count2 = $count3 = $count4 = 0;
while(<IN1>) {
$line1 = $_;
$line2 = <IN2>;
$count1++ if($line1 eq $line2);
$count2++ if($line1 ne $line2);
$count3++ if($line1 ne "" && $line2 eq "");
$count4++ if($line1 eq "" && $line2 ne "");
}
print "$count1 $count2 $count3 $count4\n";
根本没有错误检查,假设两个文件的长度相同,......