Bonsoir,
Frédéric Mantegazza a écrit :
> On samedi 22 mars 2008, Frédéric Mantegazza wrote:
>
>> On samedi 22 mars 2008, Olivier Allard-Jacquin wrote:
>
>>>> ${1%.*}
>>> Cela permet de supprimer l'extension d'un fichier
>> Une idée pour que le faire marcher avec des espaces dans le nom du
>> fichier ?
>
> En fait, ça marche ; mon problème est ailleur...
>
> Lorsque j'appelle une fonction avec des paramètres, genre :
>
> maFonction "fichier avec espaces.tif"
>
> Un 'echo $@' dans la fonction affiche bien "fichier avec espaces.tif",
> alors que un 'echo $1' affiche "fichier
>
> Une idée ?
Essaye ce code :
<code>
#/bin/bash -norc
MaFonction() {
echo "- Debut
+ Element 1: $1"
I=0
for Name in "$@"; do
I=$(( $I + 1))
echo " + Element $I: $Name"
done
}
MaFonction mon fichier 1
MaFonction mon fichier 1 mon fichier 2
MaFonction "mon fichier 1" "mon fichier 2"
MaFonction 'mon fichier 1' 'mon fichier 2'
</code>
Note: Il y a un grosse différence entre
$@
et
"$@"
Je te laisse faire le test... ;)
Cordialement,
Olivier
--
~~~~~~~ _____/\_____ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix / _ \/ _ \ Olivier Allard-Jacquin
/ / \ / \ \ Web: http://olivieraj.free.fr/
/___/ / \ \___\ Mail: olivieraj@???
~~~~ ///// ///\\\ \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!