IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Scripts/Batch Discussion :

BATCH [création de fichier de maniere incrementale]


Sujet :

Scripts/Batch

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut BATCH [création de fichier de maniere incrementale]
    Bonjour à tous,

    je cherche un batch sous Dos pour créer un certain nombre de fichier avec une valeur qui s'incrémente fichier1, fichier2, etc.....

    ce que j'ai trouvé

    set i=1
    set /a j=%i%+1

    TYPE NUL > fichier

    mais il me manque l'essentiel.

    Auriez vous une idée, s'il vous plait.

  2. #2
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par celcy
    Auriez vous une idée, s'il vous plait.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    TYPE NUL > NomDeFichier%J%.Extension
    set NF=MonNom
    Set Ext=.truc
    TYPE NUL > %NF%%J%%Ext%

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Merci pour votre reponse mais cela ne s'incremente pas lors de la creation successive de fichier?

  4. #4
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par celcy
    Merci pour votre reponse mais cela ne s'incremente pas lors de la creation successive de fichier?
    C'est à dire ? Quel code utilises-tu ?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    set i=1
    set /a j=%i%+1
    copy c:\fichier%j z:
    copy c:\fichier%j z:
    copy c:\fichier%j z:
    L'idée serait d'obtenir sur mon c:
    trois fichiers
    fichier1
    fichier2
    fichier3

  6. #6
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par celcy
    L'idée serait d'obtenir
    On est d'accord mais l'incrément ne se fait pas tout seul :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    @echo off
    set /A j=1
    :Next
    set /a j+=1
     IF EXIST c:\fichier%j% (
         copy c:\fichier%j% z:
     ) ELSE (
         echo  c:\fichier%j% introuvable.
         rem On quitte ?
         rem goto end
     )
    goto next
    :end
    Echo %j% fichiers copiés.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    @echo off
    set /A j=1             "" vous fixez la variable j à la valeur 1""
    :Next                   "" vous mettez un marqueur""
    set /a j+=1           "" ici je ne comprends pas""
     IF EXIST c:\fichier%j% (       ""ici avec mon dernier post je vous ai induie en erreur car je voulais pas copier mais créer des fichiers en série de maniere incrementale)
         copy c:\fichier%j% z:
     ) ELSE (
         echo  c:\fichier%j% introuvable.
         rem On quitte ?
         rem goto end
     )
    goto next
    :end
    Echo %j% fichiers copiés.

    Donc en fait je vais essayer de mieux m'exprimer
    je lance un fichier .bat qui me demande eventuellement une valeur, et apres renseignement de cette valeur (ex:12) il me crée 12 fichiers nommés fichier1, fichier2, fichier3, etc jusqu'a 12.
    Est ce possible? Merci encore de prendre le temps de me repondre

  8. #8
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par celcy
    set /a j+=1 "" ici je ne comprends pas""
    On incrémente, c'est un raccourci de j=j+1
    Citation Envoyé par celcy
    Est ce possible?
    Oui,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Set /P saisie=Saisissez un nombre :
    echo %saisie%
    Ce thread contient désormais tous ce qu'il faut pour réaliser ce batch, pour le détail consulter l'aide en ligne.

  9. #9
    Membre éprouvé
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Points : 1 018
    Points
    1 018
    Par défaut
    Bon aller, c'est bien parce qu’aujourd'hui c'est jour de bonté

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    set /p nbfile=nombre de fichier: 
    for /l %%i in (1,1,%nbfile%) do cd.>fichier%%i.txt
    Enjoy

  10. #10
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    eh bien merci beaucoup c'est super cela fonctionne.

    Viva l'entraide bye

  11. #11
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Bonjour à tous,

    Serait il possible de m'expliquer cette commande s'il vous plait.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Elle fonctionne très bien mais je ne comprends pas cette ligne
    for /l %%i in (1,1,%nbfile%) do cd.>fichier%%i.txt
    Une explication la plus simpliste possible car je suis un noobie ^^

    Merci d'avance

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    set /p nbfile=nombre de fichier: 
    for /l %%i in (1,1,%nbfile%) do cd.>fichier%%i.txt

  12. #12
    Rédacteur


    Profil pro
    Inscrit en
    Janvier 2003
    Messages
    7 171
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2003
    Messages : 7 171
    Points : 15 060
    Points
    15 060
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par celcy
    Une explication la plus simpliste possible car je suis un noobie
    RTFM !
    En direct de la doc :
    Itération d'une page de valeurs

    Utilisez une variable itérative pour définir la valeur de début (début#) puis avancez dans une plage définie de valeurs jusqu'à ce que la valeur dépasse la valeur de fin définie (fin#).

    /L exécute l'itération en comparant début# et fin#. Si début# est inférieur à fin#, la commande s'exécute. Lorsque la variable itérative dépasse fin#, la commande quitte la boucle. Vous pouvez également utiliser une valeur incrément# négative pour faire défiler une plage de valeurs décroissantes. Par exemple, (1,1,5) génère la séquence 1 2 3 4 5 et (5,-1,1) génère la séquence (5 4 3 2 1).

    La syntaxe de cette commande est la suivante :
    for /L {%% | %}variable in (début#,incrément#,fin#) do commande [OptionsLigneCommande]
    Cd.>fichier crée un fichier vide.

  13. #13
    Membre éprouvé
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Points : 1 018
    Points
    1 018
    Par défaut
    Si ta question a trouvé réponse celcy, n'oublie pas le

  14. #14
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Et bien merci à vous deux pour vos réponses et votre aide juste une dernière question avant de fermer ce post.
    Ou se trouve la doc dont M. Laurent Dardenne parle afin que j'y jette un coup d'oeil avant de reposter la prochaine fois?

    Allez merci encore et à une prochaine bye

  15. #15
    Membre éprouvé
    Avatar de maxim_um
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    895
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 895
    Points : 1 018
    Points
    1 018
    Par défaut
    Citation Envoyé par celcy Voir le message
    Ou se trouve la doc dont M. Laurent Dardenne parle
    Tu veux dire la TFM


    ici
    et ailleurs.
    Sans omettre celle qui est fournie par l'interpréteur de commande lui-même.
    Cependant, il s'agit non pas de la doc ou d'une doc, mais plus d'un ensemble de ressources qui exposent des fonctionnalités de base de l'interface CLI et de quelques différentes extensions. Bien entendu, cela peut varier d'un système d'exploitation à un autre.

    Bonne continuation à toi.

  16. #16
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 35
    Points : 10
    Points
    10
    Par défaut
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Batch] Création d'un fichier vide
    Par sylviefrfr dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 11/06/2019, 16h04
  2. [Batch] Automatisation de création de fichiers ISO
    Par yaumeguy dans le forum Windows
    Réponses: 2
    Dernier message: 17/04/2008, 13h48
  3. Création de fichiers batch pour écrire sur SQLPlus
    Par seb591 dans le forum Sql*Plus
    Réponses: 10
    Dernier message: 22/05/2007, 12h46
  4. Batch - Choisir un fichier par date de création
    Par Lorponos dans le forum Windows
    Réponses: 10
    Dernier message: 07/05/2006, 19h19
  5. création de fichiers .x
    Par Pazz dans le forum DirectX
    Réponses: 1
    Dernier message: 03/12/2002, 01h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo