将 txt 1 中的每一行与 txt 2 中的每一行合并并另存为 txt 3

将 txt 1 中的每一行与 txt 2 中的每一行合并并另存为 txt 3

文本1:

abc
trt
prc    etc

文本2:

1
2
3     etc

文本3:

abc1
abc2
abc3  
trt1
trt2
trt3
prc1
prc2
prc3   etc

答案1

如果文件可以容纳在内存中:

perl -e 'chomp (@a = <STDIN>); @b = <>;
         for $a (@a) {for $b (@b) {print $a,$b}}' < 'txt 1' 'txt 2'

或者,如果笛卡尔积可以放入内存中,则zsh

a=( ${(f)"$(<'txt 1')"} )
b=( ${(f)"$(<'txt 2')"} )
print -rC1 -- $^a$^b

(该删除两个文件的空行)

相关内容