您好,我正在尝试制作一个 perl 脚本,该脚本将采用 2 个文件(包含单词)并将它们加入到每个可能的组合中。
例如。
文件 1 包含:
make
move
文件 2 包含:
on
out
输出文件应为:
makeon
makeout
moveon
moveout
理想情况下,最好将文件的顺序颠倒 IE
onmove outmove onmake outmake
以下是我尝试过的一些事情,但我是初学者,永远无法正确输出
! /usr/bin/perl
open (OUT, '> output.txt');
use strict;
use warnings;
use Data::Dump qw(dump);
my @in = qw(aaa bbb ccc ddd);
my @list;
while(my $first = shift @in) {
last unless @in;
my $rest = join'\n', @in;
push @list, glob("{$first}{$rest}");
}
dump @list;
# Some other attempts
my @karray;
my @sarray;
my @testarr = (@sarray)+@karray;
my $stemplate = "test1.txt";
my $ktemplate = "test2.txt";
my $outtemplate = "output.txt";
sub pushf2a {
open(IN, "<$_[0]") || die;
while (<IN>) {
if ($_[0] eq $stemplate) {
push (@sarray,@karray,$_);
} else {
push (@karray,@sarray,$_);
}
}
close(IN) || die $!;
}
&pushf2a($stemplate, @sarray);
&pushf2a($ktemplate, @karray);
print OUT @sarray, @karray;
print OUT @list;
close (OUT);