Merdum!...j'ai oubli� de joindre mon doc
chao!
R.
----------------
Moi j'avais trouv� dans un bouquin il y a ...ouh! longtemps (je d�conne,
mais
je sais qu'on ne le trouve plus).
Il y a peut-�tre d'autres pistes bibliographiques, mais j'ai un support
que
j'avais fait avec msWord (d�sol�, c'�tait il y a ....).
Je t'en adresse un extrait en html.
Si �a te convient, c'est bien
Sinon, va falloir que je finalise tout �a en formats standards et que je
colle �a sur ce putain de site que �a fait 3 ans que je dois le faire,
et que
je trouve pas le temps.
R.
PS (je disparais 2 jours...� +)

Bernard Lambey wrote:

> > Bonjour
> > Question Troumad =
> > J'aimerai trouver une chaine 'pattie_3.html' dans un ensemble de
> > fichier. Elle doit s'y trouver au moins une fois. Comment faire?
>
> R�ponse Rosaire =
> grep 'pattie_3.html'  ton_ensemble_de_fichiers
> R.
>
> Et l'emmerdeur ajoute =
> O� trouver,tout TOUT sur grep avec des exemples ?
> La page man est ... euhhh !!! une page man ....
> Bernard L.
>
>   ------------------------------------------------------------------------
> Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
> Rendez-vous sur "http://www.mandrakestore.com";

grep

grep [options] arg1 argn...

La commande grep extrait les lignes des fichiers dont le(s) nom(s) est fourni en argument, en fonction de leur contenu.

Le premier argument est une expression, modèle de chaine à rechercher dans le ou les arguments suivants (argn). Quelques options intéressantes permettent de modifier le fonctionnement de cette commande.

-v renvoi des lignes ne contenant pas la chaine modèle.

-i ignorer la distinction majuscule/ minuscule.

-n afficher numéros des lignes dans le fichier analysé.

Des symboles peuvent être utilisés dans l’argument modèle de chaine à rechercher.

Ex : "^r" le caractère ^ symbolise le début de ligne. Ici le modèle demande l’extraction des lignes commençant par r.
":$" le caractère $ symbolise la fin de ligne. Ici, seront extraites les lignes se terminant par : .
"^..e" le caractère . (point) représente un caractère quelconque.
"^..[aoe] " les crochets permettent de symboliser une liste. Ici , seront extraites les lignes dont le 3ème caractère est un a, un o ou un e. Il est possible d’utiliser la notion d’intervalle grâce aux tirets.
"^[a-e] " Le premier caractère des lignes extraites est une lettre parmi a, b, c, d, e.
"^[^0-9] L’accent ^ dans les crochets introduit la notion de complément. Ici, seront extraites les lignes ne commençant pas par un chiffre.

sed

sed [options] commandes argn

La commande sed lit une à une les lignes des fichiers dont les noms figurent en argument et y applique les commandes qui lui sont introduites par la lettre clé e.

La commande p demande l’affichage de la ligne. Cette commande peut être réduite par un adressage.

Ex : sed -n -e 20p /nom_fichier
en l’absence de l’option -n toutes les lignes auraient été affichées avec la ligne 20 en double.

L’adressage peut préciser un intervalle.

Ex : sed -n -e 18,21p /nom_fichier
sed -n -e 18,$p /nom_fichier #Dans ce cas un message d’erreur est renvoyé, car le signe $
est utilisé par le Shell. D’où les simples quotes.
sed -n -e ‘18,$p’ /nom_fichier

Une autre forme d’adressage est dite par "contexte". Une ou les deux bornes peuvent lui être fournies sous forme de chaines de caractères.

Ex : sed -n -e ‘18,/Shellc/p’ /nom_fichier #La 1ère ligne est la 18ème et la dernière
contient la chaine "Shellc"
sed -n -e /bidon/,/Shellc/p /nom_fihier

Les chaines peuvent être remplacées par des expressions régulières.

Ex : sed -n -e ‘/^a/,/^s/p’ nom_fichier #Extraction de toutes les lignes entre celle commençant
par un a et celle commençant par un e.

cut

cut -cliste [ fichier ... ]

cut -fliste [ -dcaractere ] [ -s ] [ fichier ... ]

cut permet de conserver des caractères ou des champs dans chaque ligne d'une liste de fichier. Dans le cas de caractères la taille des colonnes est fixe, dans le cas de champs séparés par un caractère leur taille est variable. Les deux formes de la commande s'excluent. Les options sont :

liste Représente une liste de chiffres séparés par un virgule (ordre croissant) et
optionnellement par un - pour spécifier une plage (1,3,5 ou 1,4-7,9 )

-cliste la liste donne la position des caractères à conserver.

-fliste la liste donne la position des champs à garder. Les lignes qui ne contiennent pas
de délimiteur sont affichées inchangées.

-dcar Le caractère qui suit -d est le délimiteur de champ. Par défaut c'est la tabulation
qui est utilisée. Les caractères comme l'espace ou les caractères spéciaux du
Shell doivent être encadrés par des " .

-s Demande de sauter les lignes sans délimiteurs.

Ex : cut -c1 /etc/passwd #pour obtenir l’initiale du nom de chacun des utilisateurs
potentiels du système.

cut -c10-15 /etc/passwd #extraction des colonnes 10 à 15

cut -d: -f1,3 /etc/passwd #liste des utilisateurs et leur identifiant. Lorsque la liste est introduite par la lettre f, il est nécessaire de préciser le caractère séparateur de champ avec la lettre d. Ce caractère, s’il est significatif pour le Shell, doit être protégé (cf. commande grep).

cut -d: -f1,3-5 /etc/passwd #Extraction des champs 1, 3, 4, 5.

cut -c1 -d: -f1,3 /etc/passwd #provoque une erreur (cf. Remarque ci-dessous).

Remarque : on ne peut extraire à la fois des champs et des caractères (colonnes), comme dans le dernier exemple ci dessus.

Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft?
Rendez-vous sur "http://www.mandrakestore.com";

Répondre à