#!/bin/sh # Par Julien MOREAU ( jmoreau@bigfoot.com ) # Equivaut à : 'grep -li ... 2> /dev/null' nbps=1 # Nombre de parametres souhaites (sans option) nom_cmde=`basename $0` # Nom de la commande usage="Usage: [-v] $nom_cmde []" # Message d'aide usage=$usage"\n\tDonne la liste des fichiers du répertoire courant où" usage=$usage"\n\t apparait le mot en premier paramètre." usage=$usage"\n\tL'option -v (verbose mode) fait afficher toutes les erreurs." if test `uname` != "HP-UX" ; then e="-e" ; fi if [ $# -lt $nbps ] ; then # Si le nombre de paramètres est incorrecte, echo $e $usage 1>&2 ; exit 2 # Affichage aide puis arrêt. fi if test "$1" = '-v' ; then opt=$1 ; shift ; fi chn=$1 ; shift if [ $# -eq 0 ] ; then nbfic=0 while read ligne ; do fichiers="$fichiers $ligne" nbfic=`expr $nbfic + 1` done if [ $nbfic -eq 0 ] ; then echo $e $usage 1>&2 ; exit 2 # Affichage aide puis arrêt. fi set $fichiers fi ret=1 # Valeur de retour for fic in $* ; do if test -r "$fic" ; then # Si le fichier est lisible if test ! -d "$fic" ; then # Si ce n'est pas un répertoire grep -qi "$chn" "$fic" if [ $? -eq 0 ] ; then echo $fic ; ret=0 ; fi elif test -n "$opt" ; then echo "Le fichier \"$fic\" est un répertoire !" 1>&2 fi elif test -n "$opt" ; then echo "Le fichier \"$fic\" n'est pas lisible !" 1>&2 fi done exit $ret