Précédent   Forum des professionnels en informatique > Systèmes > Linux > Applications > Shell
Shell Vos questions sur l'utilisation des commandes shell
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 30/04/2011, 16h58   #1
Futur Membre du Club
 
Inscription : février 2007
Messages : 42
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 42
Points : 19
Points : 19
Par défaut Une boucle sur grep

Bonjour,

J'ai une ligne qui fonctionne:
Code :
grep -Eio '([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})' contacts.txt >> mails.txt;
Par contre, lorsque je cherche à faire une boucle sur tous les fichiers d'un répertoire avec:
Code :
1
2
3
4
5
 
#!/bin/sh
for file in `ls $1` do ; 
grep -Eio '([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})' $file >> mails.txt;
done
Là, c'est le drame:
Citation:
/home/ju/back.sh: line 3: Erreur de syntaxe près du symbole inattendu « grep »
/home/ju/back.sh: line 3: `grep -Eio '([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})' $file >> mails.txt;'
Là, j'essaie de sauvegarder les contacts d'un fichier et ça ne fonctionne pas...
1) Quelqu'un aurait une idée?
2) Et si je souhaite généraliser le scirpt aux fichiers et fichiers des sous répertories, comment faire?

Merci
leccux est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 30/04/2011, 18h02   #2
Expert Confirmé
 
Inscription : janvier 2011
Messages : 970
Détails du profil
Informations personnelles :
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : janvier 2011
Messages : 970
Points : 2 871
Points : 2 871
Salut,

Code :
1
2
3
4
5
6
#!/bin/sh
for file in `ls $1` do ; 
for file in ${1}/* 
do
grep -Eio '([[:alnum:]_.-]+@[[:alnum:]_.-]+?\.[[:alpha:].]{2,6})' $file >> mails.txt;
done
__________________
$ man woman
Il n'y a pas de page de manuel pour woman.
zipe31 est déconnecté   Envoyer un message privé Réponse avec citation 40
Vieux 30/04/2011, 19h18   #3
Futur Membre du Club
 
Inscription : février 2007
Messages : 42
Détails du profil
Informations forums :
Inscription : février 2007
Messages : 42
Points : 19
Points : 19
héhé bien vu merci.
leccux est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 03/05/2011, 16h17   #4
Membre éclairé
 
Avatar de FRUiT
 
Homme
Inscription : février 2011
Messages : 83
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 36
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : février 2011
Messages : 83
Points : 326
Points : 326
Grep a une option -R.

Useless use of for.
__________________
Neon Suite by FRUiT (kde4.6) http://tinyurl.com/yzm7cee
"Pour la carotte, le lapin est la plus parfaite incarnation du mal" (R. Sheckley)
clean
FRUiT est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 09h30.


 
 
 
 
Partenaires

Hébergement Web