Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1665 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs

  Boucle dans un shell pour creation de fichiers

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Boucle dans un shell pour creation de fichiers

n°78612
jultey
Posté le 18-03-2002 à 22:40:59  profilanswer
 

J'ai vu un jour un de mes prof qui a fait une boucle dans un shell sous Linux.... pour créer plusieurs fichiers en même temps...
Quelque chose du style :
for(i=0, i<=10, i++){touch fichier.i}
Quelqu'un pourrait me donner la syntaxe exacte svp ?

mood
Publicité
Posté le 18-03-2002 à 22:40:59  profilanswer
 

n°78615
tatanka
Posté le 18-03-2002 à 22:43:25  profilanswer
 

jultey a écrit a écrit :

J'ai vu un jour un de mes prof qui a fait une boucle dans un shell sous Linux.... pour créer plusieurs fichiers en même temps...
Quelque chose du style :
for(i=0, i<=10, i++){touch fichier.i}
Quelqu'un pourrait me donner la syntaxe exacte svp ?  




 
for i in 0..10
do
touch fichier.i
done
 
ou un truc dans le style

n°78640
jultey
Posté le 18-03-2002 à 23:01:59  profilanswer
 

Ca a l'air d'etre pas loin  de la bonne solution.... En tout cas, j'ai plus le message d'erreur de tout a l'heure et ca créer un fichier nommé fichier.i  
Je tatonne pour trouver la syntaxe... j'en suis pas loin, je le sens !!! :sarcastic:

n°78642
jultey
Posté le 18-03-2002 à 23:03:07  profilanswer
 

Ca a l'air d'etre pas loin  de la bonne solution.... En tout cas, j'ai plus le message d'erreur de tout a l'heure et ca créer un fichier nommé fichier.i  
Je tatonne pour trouver la syntaxe... j'en suis pas loin, je le sens !!! :sarcastic:

n°78643
tatanka
Posté le 18-03-2002 à 23:04:20  profilanswer
 

petite correction mais c'est pas encore ça quand même :
 
 
for i in 0..10
do
touch fichier.$i
done

 

[jfdsdjhfuetppo]--Message édité par tatanka--[/jfdsdjhfuetppo]

n°78644
tatanka
Posté le 18-03-2002 à 23:07:01  profilanswer
 

sinon, tu peux faire ça, mais c'est chiant , et y-a surement un autre moyen :
 
for i in 0 1 2 3 4 5 6 7 8 9 10
do
touch fichier.$i
done

 

[jfdsdjhfuetppo]--Message édité par tatanka--[/jfdsdjhfuetppo]

n°78741
pipomolo
faisez gaffe aux pigeons
Posté le 19-03-2002 à 11:36:24  profilanswer
 

je confim il faut mettre $i


---------------
This message is provided AS IS, and comes with ABSOLUTELY NO WARRANTY,  
n°78742
arsunik
ma tuxitude me beastifie
Posté le 19-03-2002 à 11:44:19  profilanswer
 

ya pas vraiment plus simple
 
Il faudrait utiliser expr mais on aurait plus de caractères :)
ou $(()) et (()) avec le bash ou zsh.
 
ça serait plus joli en perl.

n°78756
tatanka
Posté le 19-03-2002 à 12:56:32  profilanswer
 

ArSuniK a écrit a écrit :

ya pas vraiment plus simple
 
Il faudrait utiliser expr mais on aurait plus de caractères :)
ou $(()) et (()) avec le bash ou zsh.
 
ça serait plus joli en perl.  




 
et en awk, y-a moyen de faire un rtuc plus simple aussi, non ?

n°78777
arsunik
ma tuxitude me beastifie
Posté le 19-03-2002 à 13:44:11  profilanswer
 

hmmm je sais pas kel est la solution avec le moins de cara :)
 
awk 'BEGIN{for(i=0;i<10;i++)printf"">i}'
 
c ptet en awk oui :mdr:

mood
Publicité
Posté le 19-03-2002 à 13:44:11  profilanswer
 

n°78784
the_fireba​ll
I have fucking failed
Posté le 19-03-2002 à 14:01:36  profilanswer
 

for i in `seq 1 10`; do touch $i;done
 
seq est sympa pour ça


---------------
Two thousand years of misery, of torture in my name, hypocrisy made paramount, paranoia the law, my name is called religion, sadistic, sacred whore.
n°78788
arsunik
ma tuxitude me beastifie
Posté le 19-03-2002 à 14:18:25  profilanswer
 

the_fireball a écrit a écrit :

for i in `seq 1 10`; do touch $i;done
 
seq est sympa pour ça  




 
Arf, j'avais complément oublié seq :p
on peut encore améliorer :
for i in `seq 1 10`;do :>$i;done
seq 1 10|awk '{printf "">$1}'

n°78793
jultey
Posté le 19-03-2002 à 14:41:24  profilanswer
 

"seq", c'est quoi ? ça sert juste à aller d'un nombre à un autre?
Pareil pour "awk", je connais pas...
Je crois que les solutions que vous proposez deviennent trop complexes pour moi !!!

n°78794
tatanka
Posté le 19-03-2002 à 14:46:37  profilanswer
 

jultey a écrit a écrit :

"seq", c'est quoi ? ça sert juste à aller d'un nombre à un autre?
Pareil pour "awk", je connais pas...
Je crois que les solutions que vous proposez deviennent trop complexes pour moi !!!  




 
seq a priori, c'est pour faire une sequance de nombre compris entre les deux borne que tu spécifie apres (t'as "man seq" qui devrait pouvoir t'expliquer ça)
 
sinon, les ` permettent d'obtenir le resultat de "seq 1 10", si tu les avait pas mis, il t'aurait sortie un tru du style :
fichier.seq fichier.1 et fichier.10
 
 
retiens la soluce de the_firewall, elle est simple et elle marche tres bien

 

[jfdsdjhfuetppo]--Message édité par tatanka--[/jfdsdjhfuetppo]

n°78797
the_fireba​ll
I have fucking failed
Posté le 19-03-2002 à 14:52:13  profilanswer
 

tatanka a écrit a écrit :

 
 
seq a priori, c'est pour faire une sequance de nombre compris entre les deux borne que tu spécifie apres (t'as "man seq" qui devrait pouvoir t'expliquer ça)
 
sinon, les ` permettent d'obtenir le resultat de "seq 1 10", si tu les avait pas mis, il t'aurait sortie un tru du style :
fichier.seq fichier.1 et fichier.10
 
 
retiens la soluce de the_firewall, elle est simple et elle marche tres bien  
 
 




 
Merci pour les explications car j'avais pas trop le temps de les faire :jap: et merci pour le nouveau surnom :D  :p


---------------
Two thousand years of misery, of torture in my name, hypocrisy made paramount, paranoia the law, my name is called religion, sadistic, sacred whore.
n°78799
minusplus
Posté le 19-03-2002 à 14:53:42  profilanswer
 

the_fireball a écrit a écrit :

 
 
Merci pour les explications car j'avais pas trop le temps de les faire :jap: et merci pour le nouveau surnom :D  :p  




 
the_netfiler ?
 
 
 
:D

n°78800
tatanka
Posté le 19-03-2002 à 14:54:53  profilanswer
 

the_fireball a écrit a écrit :

 
 
Merci pour les explications car j'avais pas trop le temps de les faire :jap: et merci pour le nouveau surnom :D  :p  




 
arf !   :D  
sorry  :jap:

n°78801
the_fireba​ll
I have fucking failed
Posté le 19-03-2002 à 14:57:07  profilanswer
 

ya pas de mal, chui pas susceptible :jap:  
 
et miniplus, il peut parler tiens :na:


---------------
Two thousand years of misery, of torture in my name, hypocrisy made paramount, paranoia the law, my name is called religion, sadistic, sacred whore.
n°78803
minusplus
Posté le 19-03-2002 à 15:00:02  profilanswer
 

the_fireball a écrit a écrit :

ya pas de mal, chui pas susceptible :jap:  
 
et miniplus, il peut parler tiens :na:  




 
the_iptable ?

n°78804
jultey
Posté le 19-03-2002 à 15:01:56  profilanswer
 

Mon admin reseau m'a dit qu'on pouvait creer un fichier avec :
 
#!/usr/bin/python
 
for i in range(100):
        print "touch fichier", i
 
Et ensuite appelé le fichier.
 
Merci pour toutes vos réponses je les essayrais ce soir chez moi ...

n°78806
the_fireba​ll
I have fucking failed
Posté le 19-03-2002 à 15:07:32  profilanswer
 

-+ => the_ipchains, ça fait plus style avec le mot chains ;)  
 
Il doit y avoir un tas de possibilité, avec python, perl, C et autre, mais bon, après faut avoir les softs pour. Touch et seq font partie des outils GNU que l'on trouve partout, alors que python ou autre par forcèment...


---------------
Two thousand years of misery, of torture in my name, hypocrisy made paramount, paranoia the law, my name is called religion, sadistic, sacred whore.
n°78901
pipomolo
faisez gaffe aux pigeons
Posté le 19-03-2002 à 17:05:44  profilanswer
 

Huhu marrant ca seq je connaissais pas...  
 
On peut feinter:
 
touch fichier.`seq -s " fichier." 1 10`
 
:D

 

[jfdsdjhfuetppo]--Message édité par pipomolo--[/jfdsdjhfuetppo]


---------------
This message is provided AS IS, and comes with ABSOLUTELY NO WARRANTY,  
n°78911
jultey
Posté le 19-03-2002 à 17:15:16  profilanswer
 

sous tcsh  
 
 
foreach a ( 1 2 3 )  
echo $a  
end

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs

  Boucle dans un shell pour creation de fichiers

 

Sujets relatifs
Questions ShellCommande presque basique... mais je la trouve pas [SHELL]
script UNIX : comment trouver une chaine dans plusieurs fichiers ?compresser en plusieurs fichiers
[Apache] Processus qui boucleMail apres création d'un user
shell???[samba] Erreurs sur les fichiers ???
[DVD] Extraire les fichiers ?Probleme avec la creation d'un forum avec phpBB
Plus de sujets relatifs à : Boucle dans un shell pour creation de fichiers


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR