Sed
Résolu
dino
-
dino -
dino -
Bonjour,
J'ai une liste de fichiers >300 ,je veux remplace un mot a l'interrieur de tous ces fichier par la commande sed
for i in listdeficier do
cat $i|sed "s/ABCD/DEF/g"
qlq a une idée ?
Merci
J'ai une liste de fichiers >300 ,je veux remplace un mot a l'interrieur de tous ces fichier par la commande sed
for i in listdeficier do
cat $i|sed "s/ABCD/DEF/g"
qlq a une idée ?
Merci
A voir également:
- Sed
- Remplacez le mot sed par le mot mais dans tout le texte. combien de caractères contient le document suite à cette modification (en incluant les espaces) ? - Guide
- Sed et ses caprices (ou les miens) ✓ - Forum Linux / Unix
- Sed crlf - Astuces et Solutions
- Sed - Remplacement texte par retour à la ligne ? ✓ - Forum Linux / Unix
- Sed supprimer ligne vide - Forum Linux / Unix
8 réponses
Salut,
Où fichier* est à remplacer par le terme adéquat (expansion comprise).
sed -is 's/ABC/DEF/g' fichier*
Où fichier* est à remplacer par le terme adéquat (expansion comprise).
Merci pour ta reponse rapide !
Mais voila ce que j'ai :
set -vx
for i in list.txt do
cat $i|sed 's/ABC/DEF/g' $i
done
A l'execution j'ai :
Syntax error at line 5 : `cat' is not expected.
une idée ?
Merci
Mais voila ce que j'ai :
set -vx
for i in list.txt do
cat $i|sed 's/ABC/DEF/g' $i
done
A l'execution j'ai :
Syntax error at line 5 : `cat' is not expected.
une idée ?
Merci
Ta liste de fichier est dans un fichier texte ?
Lesdits fichiers (ceux de la liste) sont dans le même répertoire que le script ?
Sinon ma commande est faite pour être lancée depuis un terminal (sans passer par un script et sans boucle) à conditions d'avoir un dénominateur commun aux fichiers à prendre en compte (par exemple *.txt).
Lesdits fichiers (ceux de la liste) sont dans le même répertoire que le script ?
Sinon ma commande est faite pour être lancée depuis un terminal (sans passer par un script et sans boucle) à conditions d'avoir un dénominateur commun aux fichiers à prendre en compte (par exemple *.txt).
Exemple beaucoup plus parlant :
;-))
[reptest]$ ls -1 fichier1 fichier2 fichier3 [reptest]$ cat fichier1 Ligne 1 fchier1 Ligne 2 fchier1 Ligne 3 fchier1 Ligne 4 fchier1 Ligne 5 fchier1 Ligne 6 fchier1 Ligne 7 fchier1 Ligne 8 fchier1 Ligne 9 fchier1 Ligne 10 fchier1 [reptest]$ cat fichier2 Ligne 1 fchier2 Ligne 2 fchier2 Ligne 3 fchier2 Ligne 4 fchier2 Ligne 5 fchier2 Ligne 6 fchier2 Ligne 7 fchier2 Ligne 8 fchier2 Ligne 9 fchier2 Ligne 10 fchier2 [reptest]$ cat fichier3 Ligne 1 fchier3 Ligne 2 fchier3 Ligne 3 fchier3 Ligne 4 fchier3 Ligne 5 fchier3 Ligne 6 fchier3 Ligne 7 fchier3 Ligne 8 fchier3 Ligne 9 fchier3 Ligne 10 fchier3 [reptest]$ sed -is 's/Ligne 5/blablabla/' fich* [reptest]$ cat fichier1 Ligne 1 fchier1 Ligne 2 fchier1 Ligne 3 fchier1 Ligne 4 fchier1 blablabla fchier1 Ligne 6 fchier1 Ligne 7 fchier1 Ligne 8 fchier1 Ligne 9 fchier1 Ligne 10 fchier1 [reptest]$ cat fichier2 Ligne 1 fchier2 Ligne 2 fchier2 Ligne 3 fchier2 Ligne 4 fchier2 blablabla fchier2 Ligne 6 fchier2 Ligne 7 fchier2 Ligne 8 fchier2 Ligne 9 fchier2 Ligne 10 fchier2 [reptest]$ cat fichier3 Ligne 1 fchier3 Ligne 2 fchier3 Ligne 3 fchier3 Ligne 4 fchier3 blablabla fchier3 Ligne 6 fchier3 Ligne 7 fchier3 Ligne 8 fchier3 Ligne 9 fchier3 Ligne 10 fchier3 [reptest]$
;-))
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
je l'ai executer telle qu'elle est sous mon chemin voila ce que j'ai eu :
sed -is 's/ABCD/DEF/' *fichier
sed: Not a recognized flag: i
Usage: sed [-n] Script [File ...]
sed [-n] [-e Script] ... [-f Script_file] ... [File ...]
sed -is 's/ABCD/DEF/' *fichier
sed: Not a recognized flag: i
Usage: sed [-n] Script [File ...]
sed [-n] [-e Script] ... [-f Script_file] ... [File ...]