From 4fe62cbfe8d490efec9d48c89518482d1b75a60f Mon Sep 17 00:00:00 2001
From: jriou
+Le script suivant lancé avec "**/*.htm" comme paramètre devrait
+fonctionner :
+
renvoie l'indice de toto dans la liste tata titi toto
-tutu, c'est-à-dire 3.
-chaland ~ $params bla ble bli blo blu
+chaland ~ $ params bla ble bli blo blu
La commande params a 5 paramètre(s), que voici : bla ble bli blo blu
-
+
+
+
+#!/bin/sh
+echo "La commande $0 a $# paramètre(s), que voici| : $@"
+
+
+
+
@@ -345,7 +353,13 @@ La commande params a 5 param
Créez une commande qui, lorsqu'elle est appelée, renvoie le nombre
d'arguments qui lui ont été fournis, ainsi que le premier de ces
-arguments.
+arguments.
+
+#!/bin/sh
+echo "J'ai reçu $# arguments"
+echo "Le premier d'iceux est $1"
+
+
+#!/bin/sh
+N=`who | wc -l | sed -e "s/ *//"`
+MACHINE=`whoami`
+echo "Il y a $N personne(s) logués sur $MACHINE en ce moment"
+
+
+#!/bin/sh
+for i in $@;
+do
+mv $i `echo $i | sed -e "s/htm$/html/"`
+done;
+
+
-
+#!/bin/sh
+for i in $@;
+do
+mv $i `echo $i | tr '[:upper:]' '[:lower:]'`
+done;
+
+
+#!/bin/sh +ARG=$1 +shift +N=0 + +for i in $@; +do +N=`expr $N + 1` +[ x$ARG = x$i ] && echo $N +done; ++
+#!/bin/sh + +RST=`grep "[rst]" $1 | wc -l` +DEUX=`grep "[rst].*[rst]" $1 | wc -l` +CONS=`grep -v "[aeiou]" $1 | wc -l` + +(echo "Dans ce fichier, vous avez| :"; +echo "$RST mots contenant «r», «s» ou «t» et parmi eux,"; +echo "$DEUX contiennent deux de ces lettres au moins."; +echo "Il y a aussi $CONS mots ne contenant aucune voyelle.") | +sed -e "2,3s/^ *// +\$s/i */i /" ++
On veut aussi que le résultat soit placé dans un fichier, et que le résultat soit classé : toutes les lignes qui contiennent «air», puis toutes celles qui -contiennent «eau», etc.
+contiennent «eau», etc. ++#!/bin/sh + +FICHIER=resultat +MOTS="terre air eau feu" + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in $MOTS; +do +echo "Lignes contenant $i" >> $FICHIER +grep $i zola*.txt >> $FICHIER +echo >> $FICHIER +done; + ++
+#!/bin/sh + +FICHIER=resultat + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in zola[345].txt; +do +echo "Dans le fichier $i, voici les lignes contenant «mine»" >> $FICHIER +NB=`grep -n mine $i | tee -a $FICHIER | wc -l` +(echo "$NB lignes";echo ) >> $FICHIER +done; ++ @@ -436,7 +541,18 @@ coupe fic 4 8
affichera les lignes 4 à 8 du fichier fic. Affichez des messages en cas d'erreur (nombre de paramètres incorrect, fichier inexistant, etc). -
+ + ++#!/bin/sh + +[ $# != "3" ] && echo "Nombre de paramètres incorrects" && exit 1 +[ ! -r $1 ] && echo "Fichier $1 inexistant" && exit 1 + +cat $1 | sed -n -e "$2,$3p" + ++ @@ -463,7 +579,6 @@ Note pour reconstruire l'arborescence, on utilise tar zxvf fichier. -
-chaland ~ $params bla ble bli blo blu +chaland ~ $ params bla ble bli blo blu La commande params a 5 paramètre(s), que voici : bla ble bli blo blu