たい最後に開いたファイルにその内容をコピーして、最後のファイルにその内容が開いて複数のファイルとは、私は複数のファイルを開くには
が入力開けコピー:
file1.txt -> 1111
file2.txt -> 2222
file3.txt -> 3333
出力は次のようになります。
file1.txt -> 1111
file2.txt -> 2222
file3.txt -> 1111 2222 3333
私のコード
#!/usr/bin/perl
use strict;
use warnings;
my %data;
my @FILES = @ARGV;
foreach my $file (@FILES) {
local $/ = undef;
open my $fh, '<', $file;
$data{$file} = <$fh>;
foreach my $key (keys %data) {
open (OUTFILE, ">".$file) or die "#!\n";
print OUTFILE "$key";
}
}
close(OUTFILE);
exit;
コードから210
出力:
file1.txt -> file1.txt
file2.txt -> file1.txt
file3.txt -> file3.txt
ではなく、それのコンテンツのファイル名を出力しても、私は最後のファイルに以前のファイルの内容を印刷するように見えることはできませんので、ファイルを読んでいません。 ありがとうございます
これはありがとうございます!私は-tmp $$を理解していません。それは何ですか? – Tomb
@Tomb: '$$'はPIDです。より正確に行うには、一時ファイルを作成するだけです。[File :: Temp](http://p3rl.org/File::Temp)を参照してください。 – choroba