[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
duvida com sed
From: |
Mauricio Vieira |
Subject: |
duvida com sed |
Date: |
Tue, 19 Dec 2000 18:28:31 -0200 (BRST) |
Alo lista,
tenho uma duvida com um script que penso ser possivel ser feito
apenas com sed (sou iniciante). tenho uma serie de listas do majordomo e
quero acrescentar o @araketu.dcc.ufba.br em todos os nomes que nao tiverem
o @ (ha mails @outracoisa.dominio e nao devem ser alterados, mas todos os
nomes que nao tem o @ sao araketu.dcc.ufba.br)
nao entendo muito bem como o sed faz para apagar o nome do arquivo ou nao sei
como posso substituir o nome no arquivo, entao fiz o seguinte:
#!/bin/bash
# Acerta.sh - script para adicionar o @araketu.dcc.ufba.br em todos os
# logins de todas as listas que nao tiverem o @araketu.dcc.ufba.br
# Por Mauricio B. C. Vieira - 2000dez19
for I in $( ls -1 | grep -E -e 'info' -e 'config' | cut -f 1 -d . | sort \
| uniq ); do
cp $I $I.acerta
for NOME in $( grep -v @ $I.acerta ); do
sed '/NOME/d' $I.acerta >> $I
sed 's/NOME/address@hidden/' $I.acerta >> $I
done
done
#fim
e nao funcionou. como o sed pode substituir o texto no proprio arquivo,
sem ter que redirecionar pro pipe? percebi (testando) que se manda
redirecionar a saida pro proprio arquivo ele apaga (sed 'algumacoisa'
arquivo > arquivo) o proprio arquivo.
o motivo daquele pequeno comando no ls eh pq o majordomo tem os arquivos
lista-alunos, lista-alunos.config e lista-alunos.info e quero apenas o
lista-alunos. alguma sugestao? nao sei awk nem perl, mas sugestoes sao
bem-vindas (ateh um incentivo pra estudar isto tbm).
+
Mauricio Vieira
+
- duvida com sed,
Mauricio Vieira <=