[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bash : quelques petites questions...



Le Fri, 4 May 2012 14:20:13 +0200,
"JF Straeten" <jfstraeten@scarlet.be> a écrit :
>Re,
>On Fri, May 04, 2012 at 02:14:08PM +0200, David BERCOT wrote:
>[...]
>> ssh mon_serveur_esx "for monfile in ls
>> \"/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
>> d'installation De\"/*.vmdk ; do echo \"\${monfile}\" ; done"
> 
>> Premier souci : la commande ls apparaît dans le résultat ! Je ne
>> comprends pas bien pourquoi... 
>
>Ne serait-ce pas plutôt :
>for monfile in $(ls MesVdmk.*)
>do
>...
>done
>pour distribuer ta boucle sur *ce que renvoie* d'ls ?

Alors, tout d'abord, le "ls" est effectivement superflu dans ma
première écriture (c'est d'ailleurs pour ça qu'il est présent dans le
résultat).
Après, je suis d'accord sur l'écriture for monfile in $()..., sauf
qu'il faut protéger le $. Mais bizarrement, il me renvoie les résultats
découpés dès qu'il voit un blanc !

Exemple :

ssh mon_serveur_esx "for monfile in
\"/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
d'installation De\"/*.vmdk ; do echo \"\${monfile}\" ; done"

/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
d'installation De/s47z038 - Test d'installation
De-flat.vmdk
/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
d'installation De/s47z038 - Test d'installation De.vmdk

ssh mon_serveur_esx "for monfile in \$(ls
\"/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
d'installation De\"/*.vmdk) ; do echo \"\${monfile}\" ; done"

/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038
-
Test
d'installation
De/s47z038
-
Test
d'installation
De-flat.vmdk
[...]

>> Ensuite, je souhaiterais supprimer certaines lignes en ajoutant un
>> grep :
>> ssh esx-supp-02.cnin.insee.fr "for monfile in ls
>> \"/vmfs/volumes/4f33a50e-0762c7f9-9763-001a6436484a/s47z038 - Test
>> d'installation De\"/*.vmdk | grep -v 00000 ; do echo
>> \"\${monfile}\" ; done"
>> Là, il me répond : ash: syntax error: "|" unexpected
>> Je suppose que les deux commandes devraient être un peu isolées mais
>> je ne vois pas comment...
>
>En corrigeant ci-dessus, ça devrait améliorer le grep aussi, non ?
>
>C'est mieux ?

Comme je n'ai pas encore tout corrigé ;-)

David.


Reply to: