Faire un script shell qui prend en paramètres

mahriattar Messages postés 2 Statut Membre -  
jivef Messages postés 927 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Faire un script shell qui prend en paramètres le nom
du répertoire (Rep) et le nombre de sous répertoires

j'arrive pas a comprendre le question !!
A voir également:

5 réponses

eddydu44 Messages postés 44 Statut Membre 14
 
paramètre 1 --> variable $1
paramètre 2 --> variable $2

./monscript.sh param1 param2

dans le script tu dis
repertoire=$1
nbsousrepertoire=$2
0
dindoun Messages postés 1047 Statut Membre 135
 
salut
pour moi ca veut dire ca :
tu fais un programme machin.sh
ton programme sera exécuté en tapant machin.sh /opt/blahblah 5

mais ca semble un peu bête
alors je verrais plutot cette interprétation :
tu fais un programme machin.sh
ton programme sera exécuté en tapant
machin.sh $(pwd) $(find . -maxdepth 1  -type d |wc -l )

autrment dit : exécute le prorgamme machin.sh avec le répertoire en paramètre 1 et le nombre de sous-répertories en paramètre 2

en fait le paramètre 2 devrait enlevr le répertorie courant "."
0
dindoun Messages postés 1047 Statut Membre 135
 
donc,

machin.sh $(pwd) $(find . -maxdepth 1 -type d | grep '/'  |wc -l )



évidemment find permet de virer "." mais je ne sais plus comment

et comme disait eddy :
dans le script tu dis
repertoire=$1
nbsousrepertoire=$2
0
gnu
 
Faire un script shell qui prend en paramètres le nom
du répertoire (Rep) et le nombre de sous répertoires


Oui... je ne comprends pas non plus

du répertoire donc un répertoire particulier ? et que veut dire ce (Rep) ?

Et prendre des paramètres ok mais pour en faire quoi ? Ça n'a pas de sens sinon
0

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

Posez votre question
jivef Messages postés 927 Date d'inscription   Statut Membre Dernière intervention   306
 
Bonjour,

En deux lignes, à condition d'être déjà dans le répertoire concerné :
Si vous voulez récupérer le nom du répertoire courant :
basename $(pwd)

Pour le nombre de répertoires :
pwd | grep -o \/ | wc -l


grep -o va chercher toutes les occurence du caractère / (échappé avec \)
et en afficher un par ligne.

Si vous êtes dans /usr/local/scripts par exemple...
Le résultat sera "3"

En réalité, je n'ai pas compté les répertoires, mais les "/" c'est un biais, mais toujours est-il que çà fonctionne.

Quand au fainéant qui veut qu'on fasse ses devoirs à sa place, il faut qu'il comprenne bien que s'il est une buse et ne comprend pas la question, il vaut mieux qu'il change de voie. S'il ne comprend pas la question, c'est au prof qu'il faut demander, pas à commentcamarche.net.


Bonne journée.
0