Como lidar com 3 arquivos com o awk?
Ok, então, depois de passar 2 dias, não consigo resolvê-lo e estou quase sem tempo agora. Pode ser uma pergunta muito boba, então por favor, tenha paciência comigo. Meu script awk faz algo assim:
BEGIN{ n=50; i=n; }
FNR==NR {
# Read file-1, which has just 1 column
ids[$1]=int(i++/n);
next
}
{
# Read file-2 which has 4 columns
# Do something
next
}
END {...}
Funciona bem. Mas agora eu quero estendê-lo para ler 3 arquivos. Digamos que, em vez de codificar o valor de "n", preciso ler um arquivo de propriedades e definir o valor de "n" a partir dele. eu encontreiessa questão e tentei algo como isto:
BEGIN{ n=0; i=0; }
FNR==NR {
# Block A
# Try to read file-0
next
}
{
# Block B
# Read file-1, which has just 1 column
next
}
{
# Block C
# Read file-2 which has 4 columns
# Do something
next
}
END {...}
Mas isto não está funcionando. O bloco A é executado para o arquivo 0, sou capaz de ler a propriedade dos arquivos de propriedades. Mas o Bloco B é executado para os arquivos arquivo 1 e arquivo 2. E o bloco C nunca é executado.
Alguém por favor pode me ajudar a resolver isso? Eu nunca usei o awk antes e a sintaxe é muito confusa. Além disso, se alguém puder explicar como o awk lê entradas de arquivos diferentes, isso será muito útil.
Informe-me se precisar adicionar mais detalhes à pergunta.