Krishnamurti L. L. V. Nunes escreveu:
Em 26/03/07, Junior Polegato - Linux<[EMAIL PROTECTED]>
escreveu:
for ARQ in *; do echo $ARQ; mv "$ARQ" "$ARQ.bak"; sed
"s/textoantigo/textonovo/g" "$ARQ.bak" > "$ARQ"; done
ou ainda, usando o find com a opção -exec, podemos pegar uma árvore de
diretórios:
find . -type f -exec bash -c 'echo "{}"; mv "{}" "{}.bak"; sed
"s/textoantigo/textonovo/g" "{}.bak" > "{}"' \;
Junior, você não precisa mover os arquivos para um .bak e depois mover
de volta para o original. A opção "-i" do sed faz isso por você. Se
for fornecido um sufixo, essa opção ainda cria backup dos arquivos
originais. Veja o manual do sed para mais detalhes.
Olá,
Eu sei disso, mas um homem prevenido vale por dois! ;-)
Imagine se algo sai errado, tipo um texto em que alguns lugares
colocaram "carro" e deveria ser "moto" e nos outros lugares tem "moto"
corretamente. Daí você muda tudo o que for "carro" para "moto" e ao
repassar o texto percebe que era só um ou outro "carro" que deveria ser
"moto", como volta para o que tinha antes? :'(
Um homem prevenido vale por dois! ;-)
--
Atenciosamente,
Junior Polegato
Um peregrino de problemas; Um pergaminho de soluções!
Página Profissional: http://www.juniorpolegato.com.br
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]