Script shell avec 3 parametre

Résolu
raptor22 -  
sofian360 Messages postés 30 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

j'ai besoin d'une pour crée un script comme suivant :
un script qui prend 3 parametre passés par la ligne de commande
-le 1er contient un nom de repertoire
-le 2eme un prefixe du fichier
-le 3eme un nombre de fichiers a creer
ce script doit créer le répertoire puis les fichiers < prefix+numero > numero allant de 0 au nombre donné en argument .
si le repertoire existe , cela sera presisé
si les fichiers exisctent , ils serront présisés
et merci d'avance
A voir également:

2 réponses

Ezkha
 
Salut,

Je pense qu'avec ça tu devrais pouvoir t'en sortir.

Pour une intro sur les scripts shell:
https://doc.ubuntu-fr.org/tutoriel/script_shell

Pour les commandes de bases dont ton script a besoin:
http://wiki.linux-france.org/wiki/Les_commandes_fondamentales_de_Linux

Quant aux paramètres que tu envoies pour lancer le script, zyeute ça:
https://forums.commentcamarche.net/forum/affich-37619992-bash-les-arguments-parametres

Si tu galères malgré ça, hésite pas.
2
CptRomaiin Messages postés 315 Date d'inscription   Statut Membre Dernière intervention   58
 
Salut,

J'avais un peu de temps à perdre :) Voilà un script bash qui fait ce que tu demandes :

#!/bin/bash

repertoire=$1
prefixe=$2
nbFichiers=$3

# Création du répertoire s'il n'existe pas
if [ -d $repertoire ];then
 echo "Le dossier existe !";
else
 mkdir $repertoire -p
fi

# Création des fichiers s'ils n'existent pas
for ((i=0 ; $nbFichiers - $i ; i++)) do
 if [ -f $repertoire/$prefixe$i ];then
  echo "Le fichier $prefixe$i existe !";
 else
  touch $repertoire/$prefixe$i
 fi
done

Il s'utilise comme ça :

./script.sh /tmp/test pref 10

Il créera les fichiers suivant dans /tmp/test

pref0
pref1
pref2
pref3
pref4
pref5
pref6
pref7
pref8
pref9
1
zipe31 Messages postés 36402 Date d'inscription   Statut Contributeur Dernière intervention   6 431
 
Salut,

La prochaine fois, abstiens-toi ;-\

Demander de l'aide pour vos exercices sur CCM

D'autant plus que le malotru a reçu ta réponse par mail et n'a même pas daigné se déplacer pour t'en remercier et s'est contenté de cocher la case "résolu" via le mail ;-(
0
CptRomaiin Messages postés 315 Date d'inscription   Statut Membre Dernière intervention   58
 
Salut zipe31,

Oui tu as raison :-/

Enfin je me suis dis aussi que ça pouvait servir à d'autres ;)
0
Raptor22
 
Je voulais vous remercier avant mais j'avais de co..Bref merci beaucoup sa m'a vraiment aider
0
sofian360 Messages postés 30 Date d'inscription   Statut Membre Dernière intervention  
 
Grâce à toi CptRomaiin ! Toute une partie de ma classe va avoir 20/20 à un contrôle ( DUT ) ! Tu peux être fier de toi aujourd'hui ! Tu auras servit à quelque chose.
0
Ezkha
 
Sofian360, avoir 20 sans avoir chercher à comprendre, c'est pas le pieds. On est juste au mois d'Octobre et tu vas probablement commencer à emmagasiner du retard...
Même si tu as la solution, essaie de le faire par toi même, C'est beaucoup plus formateur(sans parler de la fierté d'avoir réussie seul...)
Dans tous les cas, bon courage pour la suite.
0