2008/9/30 Victor LGomes <[EMAIL PROTECTED]> > Bom dia galera! > > Estou com um problema aqui que não sei como resolver (e nem se há uma forma > de resovê-lo como estou querendo). > > Tenho que filtrar um arquivo de log do banco de dados MySQL e criar um > arquivo contendo os comandos de INSERT em uma determinada tabela e um > segundo arquivo contendo os demais comandos. Atualmente preciso varrer o > log > uma primeira vez para pegar os INSERTs e uma segunda vez para pegar os > demais comandos. Como são arquivos muito grandes, isso leva um tempo > considerável e imaginei que se houvesse uma forma de, em uma única passada, > pegar os INSERTs e jogar para um arquivo e os demais para outro, ganharia > bastante em performance. > > Alguém saberia como fazer isso ? Pesquisei um pouco mas não encontrei nada > a > respeito. > > Obrigado! > Victor >
while read linha; do [[ $linha =~ INSERT ]] && echo $linha >> /tmp/inserts.sql || echo $linha >> /tmp/outros.sql done < arquivo.sql -- Fabiano Caixeta Duarte Especialista em Redes de Computadores Linux User #195299 Ribeirão Preto - SP [As partes desta mensagem que não continham texto foram removidas]