Script shell
simovitch
-
simovitch -
simovitch -
Bonjour,
je veut ecrire un script shell sui permet de creer un nombre n de fichien , ce nombre etant donner en parametre et qui ont pour format ( file0.txt , file1.txt , ......)
ces fichiers sont créés avec une taille nulle(0 octet) et ont comme droits d'acces : rw- r-- rw- !
et merci !
je veut ecrire un script shell sui permet de creer un nombre n de fichien , ce nombre etant donner en parametre et qui ont pour format ( file0.txt , file1.txt , ......)
ces fichiers sont créés avec une taille nulle(0 octet) et ont comme droits d'acces : rw- r-- rw- !
et merci !
A voir également:
- Script shell
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Script cmd - Guide
8 réponses
tkt j fait mon mieux mais j'arrive pas a faire donner le nombre de fichiers n en paramétre!
pour la craetion des fivhier on utlise la comende touch et pour les droits d'acces la commande chmod !
stp si tu peut juste me donner la fason de passer le nombre de fichier en parametre !
pour la craetion des fivhier on utlise la comende touch et pour les droits d'acces la commande chmod !
stp si tu peut juste me donner la fason de passer le nombre de fichier en parametre !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pour la déclaration de nombre de fichier n , ca peu fonctionne avec la boucle for....do comme ca :
for (test i=0 , test i<=$1 , test i=i+1)
do
for (test i=0 , test i<=$1 , test i=i+1)
do
Re-
Pour des raisons qui m'échappent, l'emploi de la commande "touch" sous la forme "touch fichier{0..$1}.txt", sous quelques formes que ce soit, à l'intérieur d'un script (ou même en ligne de commande "set 3; touch fichier{0..$1}.txt") conduit immanquablement à la création d'un unique fichier nommé "fichier0..3.txt" !!!
L'expansion des accolades n'a pas lieu !?
Si quelqu'un a une explication à me donner je suis preneur et je l'en remercie d'avance ;-))
Donc de ce fait je t'ai induit en erreur ;-[
Bon pour m'excuser de t'avoir orienté vers une mauvaise solution, voici un bout de code permettant de créer le nom de fichier passé en paramètre au script :
Pour des raisons qui m'échappent, l'emploi de la commande "touch" sous la forme "touch fichier{0..$1}.txt", sous quelques formes que ce soit, à l'intérieur d'un script (ou même en ligne de commande "set 3; touch fichier{0..$1}.txt") conduit immanquablement à la création d'un unique fichier nommé "fichier0..3.txt" !!!
L'expansion des accolades n'a pas lieu !?
Si quelqu'un a une explication à me donner je suis preneur et je l'en remercie d'avance ;-))
Donc de ce fait je t'ai induit en erreur ;-[
Bon pour m'excuser de t'avoir orienté vers une mauvaise solution, voici un bout de code permettant de créer le nom de fichier passé en paramètre au script :
#! /bin/bash
#set -xv
if [ -z "$1" ]
then
echo "Paramètre absent"
exit
else
for i in $(seq "$1")
do
touch "fichier${i}.txt"
done
fi
;-))
Salut,
apparemment bash 'prends' les paramètres tel-quel sans chercher à les interpréter:
bizarre comme comportement.... :-)
apparemment bash 'prends' les paramètres tel-quel sans chercher à les interpréter:
Le développement des accolades est effectué avant tout autre développement et
tous les caractères ayant une signification spéciale pour les autres développe-
ments sont conservés dans le résultat. Il s’agit d’une modification purement
littérale. Bash n’effectue aucune interprétation syntaxique du texte entre les
accolades.
bizarre comme comportement.... :-)
Merci amidos , tout a fait c'est la méme remarque que j'ai aperçu sur le fonctionement de la commende touche !
pour le code ca march bien mais pour moi ce que je veut que création d'un nombre de fichier n , par exemple on suppose que le nom de script est calcul , on ve l'executer :
./ calcul 5
(5 etant le nombre de fichierqu'on ve le creer )
et ça donne 5 fichier du forme file0.txt , file1.txt...........file5.txt !
dsl pour le dérang!
pour le code ca march bien mais pour moi ce que je veut que création d'un nombre de fichier n , par exemple on suppose que le nom de script est calcul , on ve l'executer :
./ calcul 5
(5 etant le nombre de fichierqu'on ve le creer )
et ça donne 5 fichier du forme file0.txt , file1.txt...........file5.txt !
dsl pour le dérang!
pour le code ca march bien mais pour moi ce que je veut que création d'un nombre de fichier n , par exemple on suppose que le nom de script est calcul , on ve l'executer :
./ calcul 5
Ben c'est exactement ce que fait le programme ci-dessus ;-))
Tien en prime, en rajoutant la ligne en gras, tes fichiers seront créés avec les droits voulus :
./ calcul 5
Ben c'est exactement ce que fait le programme ci-dessus ;-))
Tien en prime, en rajoutant la ligne en gras, tes fichiers seront créés avec les droits voulus :
#! /bin/bash
if [ -z "$1" ]
then
echo "Paramètre absent"
exit
else
umask 020
for i in $(seq "$1")
do
touch "fichier${i}.txt"
done
fi;-))