gpt4 book ai didi

perl - 如何比较两个哈希值

转载 作者:行者123 更新时间:2023-12-04 04:49:08 25 4
gpt4 key购买 nike

我有两个文件已读入 2 个单独的哈希值。第一个文件有两列,看起来像:

123456789 11111
234567891 22222
345678912 33333

第二个文件只有一列,如下所示:
123456789
010124561
100324531

我想比较两个哈希值,每当两个文件的第一列之间存在匹配时,它应该打印到一个新文件,其中包含第一列的结果。这是我到目前为止...
#!/usr/bin/perl

use Sys::Hostname;
use lib "$ENV{HOME}/common/lib/perl";
use strict;
use warnings;

my %oid;
my %oid2;
my %atom;
my %newline;
my $oid;
my $atom;
my @line = ();
my @line2 = ();
my @oid = ();
my @oid2 = ();

my $input = 'file.txt';
my $input2 = 'file2.txt';
my $output = 'outputfile.txt';

open (IN, "<$input");
open (IN2, "<$input2");
open (OUT, "+>$output");

for my $line (<IN>) {
chomp $line;
my @line = split /\t/, $line;
push( @oid, $line[0] );
$oid{ $line[0] } = $line[0];
$atom{ $line[0] } = $line[1];
}

for my $line2 (<IN2>) {
chomp $line2;
my @line2 = split /\t/, $line2;
push( @oid2, $line2[0] );
$oid2{ $line2[0] } = $line2[0];
}

最佳答案

代码太多。了解您的 Unix 工具箱!

comm -12 <(cut -d' ' -f1 file1|sort) <(sort file2)

关于perl - 如何比较两个哈希值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17700539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com