Ouverture séquentielle de fichier

Fermé
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007 - 8 mars 2007 à 18:05
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 - 13 mars 2007 à 19:46
Bonjour, je souhaite ouvrir séquentiellement différents fichiers d'un dossier (ex: fichier1.c ; fichier2.for; fichier3.c dans le dossier PROGRAMME ) . Pourriez vous m'indiquer la marche à suivre svp . Merci d'avance.
A voir également:

11 réponses

jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
8 mars 2007 à 18:34
Salut,

Sois plus explicite sur ce que tu veux faire exactement.
Ouvrir un fichier séquentiellement c'est vague... en lecture ? en écriture ?
Pour les traiter comment ?
0
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007
8 mars 2007 à 19:33
ben en fait j'ai mon dossier qui contient les differents fichiers et moi je veux les ouvrir les uns apres les autres afin de verifier qu'ils ne contiennent pas des mots interdits ( en fait je vx savoir ce k'ils contiennent ). merci de t'interesser à mon pb
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
8 mars 2007 à 19:56
Si c'est juste pour tester la présence d'un mot dans un fichier, tu peux utiliser "grep" :
grep 'motif' fichier
Enfin, ce n'est pas la seule façon de faire, mais comme je te l'ai dit, tout dépend de la finalité de ton programme...
0
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007
8 mars 2007 à 20:40
Je vais essayer d'etre plus precis en fait si je tape la ligne suivante
$ ./test.sh src -o ./data/mon_rapport.xml

L'appel à cette commande aboutira à l'inspection de tout les fichiers
d'extension .for, .c et .h (insensible à la casse, les fichiers .H,.C et
.FOR doivent être étudiés aussi) se trouvant dans le répertoire src/ et ses sous-répertoires. Si la cible indiquée est un fichier source, il se contente d'examiner que ce fichier. Une fois, l'inspection finie, il génère un rapport (mon_rapport.xml) dans le répertoire de données,"data".
Le script doit vérifier l'existence du répertoire cible contenant les sources, et afficher une erreur claire si ce dernier n'existe pas.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
8 mars 2007 à 22:48
rep="/rep/source/"
if [ -d "$rep" ]
then
cmd ...
else
echo -e "\n********ERROR********" >> ./data/mon_rapport.xml 
echo -e "Le répertoire \"$rep\" n'existe pas !\n" >> ./data/mon_rapport.xml 
fi
0
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007
9 mars 2007 à 19:41
le script que tu m'as fourni fonctionne bien mais le probleme est que le rapport.xml qu'il genere contient l'existence ou non du dossier dans lequel on veut travailler mais en fait je voudrais qu'il affiche par exemple le contenu de tous les fichiers qui sont dans le dossier dans lequel je veux travailler. Comment puis-je faire? merci
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 569
9 mars 2007 à 19:46
Salut,

dans ton script tu fait un cat sur chaque fichier et tu l'envoie vers rapport.xml
0
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007
9 mars 2007 à 22:52
oui mais si je fais un cat cela suppose que je connais le nom des fichiers présents dans le dossier (et qu'il restera fixe) mais moi je veux les ouvrir mais je ne sais pas combien il y a de fichiers et je n'ai pas leur nom (je sais k'il y a des fichiers en .c , .for et .h)
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
9 mars 2007 à 23:05
for i in *.{c,h,for,C,H,FOR}; do cat "$i"; done
;-)
0
dr971 Messages postés 27 Date d'inscription mardi 6 mars 2007 Statut Membre Dernière intervention 26 juillet 2007
13 mars 2007 à 19:12
merci pour ton aide ca fonctionne
0
jipicy Messages postés 40842 Date d'inscription jeudi 28 août 2003 Statut Modérateur Dernière intervention 10 août 2020 4 897
13 mars 2007 à 19:46
Happy for you ;-)
0