Petit script shell sous linux
voila une petite parti de mon script de test
foreach sourcefile (/home/moi/image/*.jpg)
echo sourcefile
et ce con me dit :
syntaxe error near unexpected token '(/'
grrr!!!
bon oki chui novice en shell machin mais kes qu'il veut ??
--
mr poussy
foreach sourcefile (/home/moi/image/*.jpg)
echo sourcefile
et ce con me dit :
syntaxe error near unexpected token '(/'
grrr!!!
bon oki chui novice en shell machin mais kes qu'il veut ??
--
mr poussy
5 réponses
-
Modérateury a personne qui sait ??
-
ModérateurD'abord c'est dans quel langage ton script ?
Gates gave us the windows.
Linux gave us the whole house.... -
ModérateurEn bash, essaye quelque chose du genre
#!/bin/bash
for myfile in images/* ; do
echo $myfile;
done
Gates gave us the windows.
Linux gave us the whole house.... -
Modérateurca y est ca marche
je n'avais pas defini le bon shell
il fallait que j'ecrive
#!/bin/tcsh
c tout :)
hala le nul que je suis ;) -
ModérateurPour parcourir une arborescence de fichiers, utilise la commande find ( ENORMEMENT d'options)
exemple sous bash
#!/bin/bash
function mamanip(){
[ "$1X" != "X" ] && file $1
}
OLDIFS=$IFS
#on utilise : comme séparateur
# $1 est le paramètre du script , normalement le nom d'un répertoire
LIST=$(find $1 -type f -printf "%p:" )
# éviter les espaces dans les noms de fichiers le caractère ":" normalement pas
# conseilé dans les noms de fichier UNIX
IFS=":"
for file in $LIST ; do
mamanip $file
done
# rétablir IFS
IFS=$OLDIFS
Gates gave us the windows.
Linux gave us the whole house....