2016-03-02 55 views
0

我在文件(prefix.txt)中有一个大约3000的巨大字典前缀。Shell:将文件前缀(字符串)列表添加到其他文件中的每个域中

#prefix.txt 
mail 
ns1 
japan 
server 
ftp 
...... 

另一个文件(domains.txt)将有11,000个域。

#domains.txt 
1,google.com 
2,box.com 
3,cnn.com 
4,bbc.com 
...... 

对于domains.txt各个领域,我必须插入前缀(3000),以它的列表。

#Example (Final.txt) : 
1,mail.google.com 
1,ns1.google.com 
1,japan.google.com 
1,server.google.com 
1,ftp.google.com 
............. 

我知道这个组合会给(3000 * 11000 = 33Million)左右的子域。

老实说,我不熟悉shell/bash脚本。有人可以就如何实现这一目标提供任何建议吗?

+1

阅读有关'paste'。 –

+0

@user:检查它。不管怎么说,还是要谢谢你。 – Arun

+0

@Arun,我会使用一些脚本语言,例如Python--它会成为你的选择吗? – MaxU

回答

1

随着awk

awk 'FNR==NR{a[$0]++;next} {for (prefix in a) { print prefix "." $0 }}' prefix.txt domains.txt 

编辑:

awk 'FNR==NR{a[$0]++;next} {for (prefix in a) { split($0, arr, ","); print arr[1] "," prefix "." arr[2] }}' prefix.txt domains.txt 
+0

谢谢你建议使用awk。 – Arun

+0

如果我将ID添加到domains.txt并用“,”分隔符分隔。 ID,域。如何将ID添加到结果? – Arun

相关问题