Précédent   Forum des professionnels en informatique > Systèmes > Linux > Réseau
Réseau Vos questions autour des réseaux et télécoms sous Linux
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/10/2007, 15h39   #1
Membre à l'essai
 
Inscription : octobre 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 115
Points : 21
Points : 21
Par défaut un boucle for pour compter le nombre de fichier et le répertoire

Code :
1
2
3
4
5
6
7
8
Rep=${1:-.}
d=0; f=0
for fich in $Rep/* $Rep/.*; do--------/*qui peut m'expliquer cette ligne*/
  if [ -d $fich ]; then
    ((d = d + 1))
  else
    ((f = f + 1))
  fi
car je ne comprend pas pourquoi il écrit encore une fois sur /*$Rep/.*
wang_xue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/10/2007, 15h56   #2
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 903
Points : 1 903
Bonjour

cela signifie qu'on cherche dans tous les fichiers normaux, mais aussi ceux qui sont cachés(ceux qui commencent par un . sous linux)
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/10/2007, 22h15   #3
Membre à l'essai
 
Inscription : octobre 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 115
Points : 21
Points : 21
mais pourquoi il écirt $Rep en commencant par /* et termine par /.cela veut dire quoi??
wang_xue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/10/2007, 21h44   #4
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 903
Points : 1 903
Rep est la variable où l'on stocke le chemin courant
Je n'ai pas compris l'écriture, mais au final on obtient . ce qui correspond au répertoire courant.

* signifie toute chaîne de caractère, tous les fichiers ...

Sauf les fichiers systèmes qui commencent par point . (c'est comme ça, les fichiers cachés sous linux commencent par . et on ne les affiche pas par défaut)
Donc, on les liste aussi en filtrant le premier caractère et en utilisant le métacaractère *
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2007, 16h47   #5
Membre à l'essai
 
Inscription : octobre 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 115
Points : 21
Points : 21
pourquoi on utilise /* $Rep/ et puis on écire.*
wang_xue est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2007, 17h01   #6
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 546
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 546
Points : 7 776
Points : 7 776
évitez de faire des boucles pour rien ! voilà une solution plus propre :
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2007, 17h35   #7
Modérateur
 
Avatar de ggnore
 
Inscription : juillet 2004
Messages : 2 246
Détails du profil
Informations personnelles :
Âge : 33

Informations forums :
Inscription : juillet 2004
Messages : 2 246
Points : 1 903
Points : 1 903
Citation:
Envoyé par wang_xue Voir le message
pourquoi on utilise /* $Rep/ et puis on écire.*
Désolé je ne comprends pas ce que tu dis.
J'ai mis des liens dans mon précédents messages que tu pourrais consulter spécialement celui là : http://marcg.developpez.com/ksh/

Citation:
Envoyé par frp31
évitez de faire des boucles pour rien ! voilà une solution plus propre :
Parfois la quête est plus importante que le but à atteindre : et si c'était une initiation au script shell ?
__________________
Toutes les vertus des hommes se perdent dans l’intérêt comme les fleuves se perdent dans la mer.
ggnore est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2007, 19h23   #8
Membre à l'essai
 
Inscription : octobre 2006
Messages : 115
Détails du profil
Informations forums :
Inscription : octobre 2006
Messages : 115
Points : 21
Points : 21
$Rep/* $Rep/.*; Je veux juste demande le permier $Rep pour le répertoire et la 2ème pour écrire /* $Rep/.* comme ça
wang_xue est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h19.


 
 
 
 
Partenaires

Hébergement Web