具体要求请看原帖。
点击(此处)折叠或打开
-
#!/bin/awk -f
-
BEGIN{FS="[][]";limit=10}
-
{
-
for(i=0;i++<NF;){
-
if(i%2)t=$i
-
else{
-
if(i>2){
-
for(j=0;j++<length(b[i-2]);){
-
for(k=0;k++<split($i,a,"");){
-
b[i][++n]=b[i-2][j]""t""a[k]
-
if(i==NF-1)b[i][n]=b[i][n]$(i+1)
-
}
-
if(n>=limit)break
-
}
-
n=0
-
}else for(j=0;j++<split($i,a,"");)b[2][j]=t""a[j]
-
}
-
}
-
for(i=1;i<=limit&&i<=length(b[NF-1]);i++)print b[NF-1][i] > "file."NR
-
delete b
- }