#!/bin/sh # Par Julien MOREAU ( jmoreau@bigfoot.com ) nbps=2 # Nombre de paramètres souhaités nom_cmde=`basename $0` # Nom de la commande usage="Usage: $nom_cmde []" usage=$usage"\n\tRemplace dans le fichier la chaine " usage=$usage"\n\tpar la chaine ." usage=$usage"\nExemple :\tfind ~ | remplace isty1 isty2" 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 ch_av=$1 ; ch_ap=$2 ; shift 2 if [ $# -lt $nbps ] ; then # S'il faut lire sur l'entrée standard while read ligne ; do fichiers="$fichiers $ligne" done else fichiers=$* fi for fic in $fichiers ; do if test ! -r $fic ; then echo "$nom_cmde: $fic => Fichier illisible ou inexistant !" 1>&2 else grep -q $ch_av $fic if [ $? -eq 0 ] ; then f=`basename $fic` echo $e "Remplacement dans $f ... \c" ed $fic >> /dev/null << ! g/$ch_av/s//$ch_ap/g w ! echo "OK." fi fi done exit 0 # Sortie sans erreur