Re: Pb de script shell (KSH)

Top Page

Reply to this message
Author: Bayle Christian
Date:  
To: Marc TERRIER
CC: guilde
Subject: Re: Pb de script shell (KSH)
Juste pour compléter la réponse j'aurais fait en plus rapide

#! /bin/sh
while read ligne ; do
        IFS=":"
        set $ligne
        resultat=`echo "$1 df -g $2" < /dev/null`
        echo "$resultat"
done <<-FIN
machine1:vol1
machine2:vol2
FIN


Ca évite un paquet de fork couteux
pas besoin de perl ni de awk pour cela ;-)

Christian

Marc TERRIER a écrit :
> Bonjour,
>
> J'ai un fichier texte de quelques centaines de lignes, contenant chacune
> différents champs séparés par des ':'. Le premier champ est un nom de machine à
> laquelle je dois passer une commande par rsh, et le deuxième champ un nom de
> volume dont je souhaite récupérer la taille en Go.
>
> Si je parcours mon fichier avec une boucle 'while ... do ... done', comme
> celle-ci :
>
> while read ligne ; do
> [...]
> machine=`echo $ligne | awk -F: '{ print $1 }'
> volume=`echo $ligne | awk -F: '{ print $2 }'
> resultat=`rsh ${machine} df -g ${volume}`
> echo ${resultat}
> [...]
> done < FICHIER
>