Eu faria isso em Perl:
$ perl -lne 'printf "\"http://$_\","' file | sed 's/,$/\n/'
"http://google.com","http://trafficinviter.com","http://example.com"
O -l
remove os caracteres de nova linha do final de cada linha (também adiciona um \n
a cada print
chamada e é por isso que estou usando printf
). O -ne
significa "execute o script fornecido por -e
em cada linha do arquivo de entrada. O próprio script imprimirá "http://
, a linha atual ( $_
) e ",
. Em seguida, o sed
remove a última vírgula final.
Como alternativa, você pode fazer:
$ sed 's#^#"http://#;s#$#"#' file | tr "\n" "," | sed 's/,$/\n/'
"http://google.com","http://trafficinviter.com","http://example.com"
Aqui, o primeiro sed
substituirá o início de cada linha ( ^
) por "http://
e o final de cada linha ( $
) por "
; o tr
substitui cada caractere de nova linha por uma vírgula e o segundo sed
remove a última vírgula à direita.