[FUG-BR] OT: script

Renato Botelho rbgarga em gmail.com
Quinta Novembro 27 09:51:05 BRST 2014


> On Nov 27, 2014, at 09:28, Pedro Silva <pedro.flum at gmail.com> wrote:
> 
> O que achei interessante foi o "sed" do Linux funcionar e o "sed" do
> FreeBSD não funcionar de jeito nenhum.
> 
> No Linux (Fedora 20) o comando sed 's/\t/;/g' file.txt teve o efeito que eu
> esperava; no FreeBSD não acontece nada.
> 
> Tirei o CRLF com o comando tr -d '\15' < file.txt > file-1.txt e mesmo
> assim não funcionou no sed do FreeBSD
> 
> Com o AWK também funcionou certinho.
> 
> Obrigado a todos pelas dicas.
> 
> Se alguém descobrir porque o sed do FreeBSD 9.1 não funciona, agradeceria.

As implementações do sed GNU e BSD são diferentes, você pode instalar o GNU sed a partir do port textproc/gsed.

O tr é uma opção muito boa, daria inclusive pra vc trocar os tabs por ;, além de remover o \r.

# cat arquivo | tr ‘\t’ ‘;’ | tr -d ‘\r’ > arquivo2

Acho que essa seria a solução com menor consumo de recursos, já que o tr é bem mais leve que sed e/ou awk.

[]s
--
Renato Botelho



Mais detalhes sobre a lista de discussão freebsd