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

Re: bash: if, test et *



* julien therier <berserker_fr@yahoo.fr> [2008-10-27 23:22:58 +0000] wrote :

> Bonsoir,

Salut,

> Depuis mon arrivée sur Linux, je cherche à me familiariser aux shell en lieu et place du C.
> 
> Je cherche à faire un truc tout simple en bash mais pourtant je butte depuis des heures sans trouver de solution.
> 
> Je veux programmer une boucle qui teste si des fichiers ayant la même racine existent:
> 
> ----------
> 
> code
> 
> ----------
> 
> if [[ -f /tmp/fichier.* ]]
> 
> then echo "Il existe déjà une/des copie/s de ce fichier"
> 
> exit -1
> 
> fi
> 
> ----------

Ma solution en utilisant un array et en vérifiant chacune des fichiers :

#!/bin/bash 

list=( `ls` )

for i in ${!list[@]}
do
 if [[ ${list[i]}  =~ ^fichier.* ]]
 then 
    echo "il existe une/des copie/s de ce fichier"
 fi
done

Ceci marche avec bash 3.2 !

-- 
. ''`.  (\___/) E d i   S T O J I C E V I C
: :'  : (='.'=) http://www.debianworld.org 
`. `~'  (")_(") GPG: 0x1237B032
  `-


Reply to: