Ocorreu-me que este não é um cenário de uso incomum, então eu verifiquei o site do PostgreSQL para ver se eles têm soluções - e de fato eles listam várias ferramentas para fazer o trabalho . Espero que um deles funcione para você.
Estou tentando converter um arquivo de saída mysqldump para SQL compatível com PostgreSQL. O problema está em lidar com valores de string escapados.
Eu preciso ir de:
VALUES('blah blah blah','second string \'with escaped\'
quotes
and multiple lines goes here',35,10,'meh')
para:
VALUES(E'blah blah blah',E'second string \'with escaped\'
quotes
and multiple lines goes here',35,10,E'meh')
Observe a adição do "E" antes de cada string entre aspas simples.
Como isso pode ser feito em sed? Também aberto para usar outros mecanismos de regex, desde que eu possa transmitir-los (lidando com arquivos multi-GB aqui).
Ocorreu-me que este não é um cenário de uso incomum, então eu verifiquei o site do PostgreSQL para ver se eles têm soluções - e de fato eles listam várias ferramentas para fazer o trabalho . Espero que um deles funcione para você.
Tags regex postgresql sed