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 :

Ajouter automatiquement echo devant chaque ligne en ASCII pour afficher un mot, un dessin [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 126
    Points : 76
    Points
    76
    Par défaut Ajouter automatiquement echo devant chaque ligne en ASCII pour afficher un mot, un dessin
    Bonsoir les développeurs

    Ce script me permet d'ajouter devant chaque ligne le mot echo pour afficher un mot, un dessin en ASCII dans un batch

    Voici le script:

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    @echo off
    echo.
    set /p file=Taper le nom du fichier.bat (sans extension) ^>^> 
    echo.
    set /p name=Taper echo et des espaces à ajouter avant chaque ligne ^>^> 
    echo.
    for /f "tokens=* delims= " %%a in (%file%.bat) do (
    set /a N+=1
    echo ^%name%%%a^ >>%file%.bat
    )
    pause

    Cependant j'ai deux problèmes:

    1. Le batch n'écrase pas les lignes sans l'echo. Donc j'obtiens des lignes sans echo puis des lignes avec echo

    2. Le script ne reconnait pas les noms de fichier avec espace. Pourtant j'ai essayé en ajoutant les guillemets ""

    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ("%file%".bat)
    >> "%file%".bat

    Peut-on ajouter automatiquement @echo off et pause ?

    Votre aide me sera très utile. MERCI.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Développeur .NET en devenir
    Inscrit en
    Août 2017
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET en devenir
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2017
    Messages : 546
    Points : 1 084
    Points
    1 084
    Par défaut
    Bonjour,

    Pour le problème n°2 il faut quoter le nom de fichier avec l'extension, et ne pas oublier de rajouter usebackq dans la boucle for :

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    @echo off
    echo.
    set /p file="Taper le nom du fichier.bat (sans extension) >> "
    echo.
    set /p name="Taper echo et des espaces à ajouter avant chaque ligne >> "
    echo.
    for /f "usebackq tokens=* delims= " %%a in ("%file%.bat") do (
    set /a N+=1
    echo ^%name%%%a^ >>"%file%.bat"
    )
    pause

    Désolé je n'ai pas compris ton problème n°1, un exemple serait bienvenu.

  3. #3
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Bonsoir barnabe0057

    Merci d'avoir répondu et de vouloir m'aider.

    Mon problème n° 1 le voici en visuel: j'ai pris comme exemple le mot MENU en ASCII

    Lorsque le script ajoute au début de chaque ligne echo, il ne supprime pas les lignes où il y en n'a pas (les quatre premières lignes).
    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     _  _    ____    __ _    _  _  
    ( \/ )  (  __)  (  ( \  / )( \ 
    / \/ \   ) _)   /    /  ) \/ ( 
    \_)(_/  (____)  \_)__)  \____/ 
    echo  _  _    ____    __ _    _  _  
    echo ( \/ )  (  __)  (  ( \  / )( \ 
    echo / \/ \   ) _)   /    /  ) \/ ( 
    echo \_)(_/  (____)  \_)__)  \____/

    Encore une fois MERCI.

  4. #4
    Membre éprouvé
    Homme Profil pro
    Développeur .NET en devenir
    Inscrit en
    Août 2017
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET en devenir
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2017
    Messages : 546
    Points : 1 084
    Points
    1 084
    Par défaut
    Est-ce que c'est mieux comme ça :

    Code batch : 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
    echo.
    set /p file="Taper le nom du fichier.bat (sans extension) >> "
    echo.
    set /p name="Taper echo et des espaces à ajouter avant chaque ligne >> "
    echo.
    for /f "usebackq tokens=* delims= " %%a in ("%file%.bat") do (
    set /a N+=1
    echo ^%name%%%a^ >>"%file%_bis.bat"
    )
     
    del "%file%.bat"
    ren "%file%_bis.bat" "%file%.bat"
    pause

  5. #5
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Mille mercis barnabe0057, tu as résolu mes 2 problèmes.

    Je reviens à la question de savoir si on peut ajouter automatiquement @echo off et pause.

  6. #6
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    Citation Envoyé par tease Voir le message
    Bonsoir barnabe0057

    Merci d'avoir répondu et de vouloir m'aider.

    Mon problème n° 1 le voici en visuel: j'ai pris comme exemple le mot MENU en ASCII

    Lorsque le script ajoute au début de chaque ligne echo, il ne supprime pas les lignes où il y en n'a pas (les quatre premières lignes).
    Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     _  _    ____    __ _    _  _  
    ( \/ )  (  __)  (  ( \  / )( \ 
    / \/ \   ) _)   /    /  ) \/ ( 
    \_)(_/  (____)  \_)__)  \____/ 
    echo  _  _    ____    __ _    _  _  
    echo ( \/ )  (  __)  (  ( \  / )( \ 
    echo / \/ \   ) _)   /    /  ) \/ ( 
    echo \_)(_/  (____)  \_)__)  \____/

    Encore une fois MERCI.


    Merci Winjerome pour la mise en forme.

  7. #7
    Membre éprouvé
    Homme Profil pro
    Développeur .NET en devenir
    Inscrit en
    Août 2017
    Messages
    546
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur .NET en devenir
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2017
    Messages : 546
    Points : 1 084
    Points
    1 084
    Par défaut
    Pour ajouter le @echo off et la pause, je suis sûr que tu aurais pu trouver toute seule

    Code batch : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    @echo off
    echo.
    set /p file="Taper le nom du fichier.bat (sans extension) >> "
    echo.
    set /p name="Taper echo et des espaces à ajouter avant chaque ligne >> "
    echo.
    echo @echo off >"%file%_bis.bat"
     
    for /f "usebackq tokens=* delims= " %%a in ("%file%.bat") do (
    set /a N+=1
    echo ^%name%%%a^ >>"%file%_bis.bat"
    )
     
    echo pause >>"%file%_bis.bat"
    del "%file%.bat"
    ren "%file%_bis.bat" "%file%.bat"
    pause

  8. #8
    Membre régulier
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2015
    Messages : 126
    Points : 76
    Points
    76
    Par défaut
    C'est si simple que ça pourtant je n'y avais pas pensé.

    Merci barnabe0057 pour tout.

  9. #9
    Expert confirmé

    Homme Profil pro
    Responsable déploiement (SCCM, InTune, GPO)
    Inscrit en
    Juillet 2014
    Messages
    3 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Responsable déploiement (SCCM, InTune, GPO)
    Secteur : Transports

    Informations forums :
    Inscription : Juillet 2014
    Messages : 3 184
    Points : 5 755
    Points
    5 755
    Par défaut
    Tu peux passer le sujet en résolu si c'est le cas

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

Discussions similaires

  1. [XL-2016] Formule ajouté automatique après insertion de ligne
    Par anis.abbadi dans le forum Excel
    Réponses: 4
    Dernier message: 17/05/2019, 14h20
  2. [CKEditor] Ajout automatique de saut de ligne après enregistrement
    Par janclod dans le forum Bibliothèques & Frameworks
    Réponses: 2
    Dernier message: 23/12/2008, 22h14
  3. Réponses: 2
    Dernier message: 20/10/2008, 09h24
  4. Combobox avec une image devant chaque ligne
    Par vexal dans le forum Composants VCL
    Réponses: 7
    Dernier message: 09/02/2008, 12h22
  5. Modifer un fichier en ajoutant le numéro de chaque ligne
    Par bellout dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 15/06/2006, 13h43

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