Quelques questions sur les batch

Résolu
Bonjour,

Actuellement, je suis en plein codage d'un batch qui crée une arborescence de fichier. Le souci auquel je me heurte est assez simple, je dois "minusculiser" tout les caractères qu'a entré l'utilisateur.

Pour info, voici le code du batch:

@echo off  
set nom=  
set /p nom=Entrez le nom du projet:   
if %nom%=="" goto fin  
md projet-%nom%  
cd projet-%nom%  
md archives   
md db  
md documentation  
md sources  
md www-%nom%  
cd www-%nom%  
md docs  
md pages  
cd pages  
md images  
md includes  
cd ..  
md styles  
cd styles  
md images  
:fin  
echo Fini !  


Encore 3 petites questions:
-Comment en script fait-on des retours à la ligne?

-Comment fait-on pour modifier les couleurs par défaut de "CMD"

-Connaissez-vous un programme pour éditer et coder des batch (.bat) avec éàüè (accents et caractères spéciaux)?

( une petite capture du batch: https://imageshack.com/ )



Meilleures salutations
damiens1026

5 réponses

  1. Contributeur
    Voici tout d'abord le code pour changer la casse des lettres :

    set choice=%choice:A=a%
    set choice=%choice:B=b%
    set choice=%choice:C=c%
    set choice=%choice:D=d%
    set choice=%choice:E=e%
    set choice=%choice:F=f%
    set choice=%choice:G=g%
    set choice=%choice:H=h%
    set choice=%choice:I=i%
    set choice=%choice:J=j%
    set choice=%choice:K=k%
    set choice=%choice:L=l%
    set choice=%choice:M=m%
    set choice=%choice:N=n%
    set choice=%choice:O=o%
    set choice=%choice:P=p%
    set choice=%choice:Q=q%
    set choice=%choice:R=r%
    set choice=%choice:S=s%
    set choice=%choice:T=t%
    set choice=%choice:U=u%
    set choice=%choice:V=v%
    set choice=%choice:W=w%
    set choice=%choice:X=x%
    set choice=%choice:Y=y%
    set choice=%choice:Z=z%


    Ce code remplace le A par un a, le B par un b, etc ...

    Que veux-tu dire par retour à la ligne ?

    Voici la commande pour changer la couleur : color 0A
    1
    1. Tout d'abord, merci pour cette si rapide réponse :)
      Par retour à la ligne, j'entends ceci:
      bla bla bla
      bla 123
      [passer à la ligne suivant, comme si c'était sur "Enter" que l'on appuyait]

      0
      1. Contributeur
        Pour exécuter plusieurs commandes sur la même ligne, tu peux utiliser le symbole &

        echo Bonjour ! & echo Comment vas-tu ? & pause>nul
        0
      2. en fait ce que je cherche à faire, c'est des retours à la ligne comme si c'était des \n en C ...
        0
      3. à propos du "&" => http://imageshack.com/f/jc49744463p
        0
      4. Contributeur
        Je ne vois pas ce que tu veux dire, désolé.
        Que veux-tu faire exactement avec ce retour à la ligne ?
        0
    2. Salut !

      Il n'y a pas de fonction pour manipuler la casse des chaînes en batch, mais plusieurs solution plus ou moins extravagantes ont été proposées. Je te laisse choisir :
      https://www.robvanderwoude.com/battech_convertcase.php

      Quant à insérer des sauts de ligne, il suffit d'utiliser echo. , par exemple :
      echo Hello  
      echo.  
      echo World!

      Pour le reste, je sais pas...
      0
      1. Contributeur
        Le changement de casse n'est plus un problème.
        0
    3. Encore une chose, sais tu comment faire des commentaires en batch?
      0
      1. Un petit REM en début de ligne :P
        0
    4. MERCI à tous!!!
      0