Extraire une partie d'un fichier texte - Shell/Batch - Programmation
Marsh Posté le 11-10-2007 à 12:35:46
awk '/pattern/,0{print}' |
Où <pattern> est une regexp.
Edit : et puis si tu veux simplement tester ta ligne sans utiliser une regexp, et bien tu fais la même chose avec un test au lieux d'une regexp :
awk '$0=="ma ligne",0 { print }' |
Marsh Posté le 11-10-2007 à 15:31:50
Merci ça fonctionne. J'ai simplement fait des modifications en fonction de mon fichier de données car toutes les lignes ne sont pas de la même forme et les séparateurs diffèrent.
Voila ma commande au final :
awk -F: '$2 ~ /.*ma ligne/,0 { print }'
Encore merci
Marsh Posté le 11-10-2007 à 11:37:47
Bonjour à tous,
J'aimerais écrire un programme en shell, pour parcourir un fichier texte ligne par ligne. Dans la ligne je cherche une chaîne de caractères spécifique. Des que je trouve cette chaîne, je voudrais copier le reste du fichier (en dessous de cette ligne) dans un autre fichier.
J'arrive bien à parcourir mon fichier de base avec un while read line, ou bien avec awk mais je n'arrive pas tester la ligne lue pour voir si elle contient bien la chaîne de caractères recherchée.
Est-ce que quelqu'un aurait une idée ?
merci d'avance pour vos réponses.
Phil