Bom segue o comando abaixo que fará a consulta e retornará num arquivo csv separado por " (aspas duplas) e , (vírgula)
mysql -uusuario -psenha banco_de_dados -B -e "select * from \`tabela\`;" | sed 's/\t/","/g;s/^/"/;s/$/"/' > arquivo.csv
Substitua as palavras "usuário", "senha", "banco_de_dados" e "arquivo" pelas informações corretas de seu sistema
O resultado saíra no formato abaixo:
"id","username","group","password"
"1","tux","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"2","tlugian","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"3","saiyuki","admin","5f4dcc3b5aa765d61d8327deb882cf99"
"4","fred","staff","5f4dcc3b5aa765d61d8327deb882cf99"
"5","barney","staff","5f4dcc3b5aa765d61d8327deb882cf99"
"6","wilma","admin","5f4dcc3b5aa765d61d8327deb882cf99"
No comando MYSQL temos a opção "-uusuario" onde informamos a o usuario logo após a opção "-u" e o mesmo acontece com a senha "-psenha", após essas opções informamos o banco de dados onde faremos a consulta.
A opção -B delimitará os dados usando tabs e colocará cada resultado em uma nova linha.
A opção -e orá executar o comando e, aspas que no nosso caso fpo o select. Inclusive aqui você pode modifica-lo tambem usando a clausula WHERE e etc.
Depois filtramos pro comando sed e formatamos o arquivos
s/\t/","/g;s/^/"/ -> Substituirá todos os tabs por "," (virgula).
;s/$/"/ -> Coloca as aspas duplas " no começo da linha.
E por último direcionamos tudo para o arquivo.csv
Obs.: Fiz uma alteração removendo um comando do sed desnecessário.
Fonte: http://tlug.dnho.net/node/209
segunda-feira, 1 de abril de 2013
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário