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 :

Substitution ; retour chariot


Sujet :

Scripts/Batch

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 165
    Par défaut Substitution ; retour chariot
    Salut,

    voici un exemple de Path

    Path=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\system32\wbem;C:\Program Files\ATI Technologies\ATI.ACE\Core-Static
    et voilà ce que je souhaiterais obtenir

    C:\WINDOWS\system32
    C:\WINDOWS
    C:\WINDOWS\system32\wbem
    C:\Program Files\ATI Technologies\ATI.ACE\Core-Static
    bien sur, le nombre de chemins inclus est inconnu. C'est pour ça que je précise que c'est un exemple.

    J'ai consulté ce post http://www.developpez.net/forums/d65...-retour-ligne/ et en ai déduit ce script :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    SET | findstr "^Path=" > Path.txt
    
    @Echo off & Setlocal enableextensions enabledelayedexpansion
    
    For /f "delims=;" %%a In ('Type "Path.txt"') Do (
    Set v=%%a
    Set return_=!return_!!v!
    Echo !return_! >output_.txt
    )
    endlocal & pause & exit
    Malheureusement seul :

    Path=C:\WINDOWS\system32
    apparait dans le fichier de sortie. Ce serait presque bon s'il faisait réellement une boucle avec chaque occurence du ";" trouvée. Et en plus il faudrait qu'il supprime ce "Path="

    Avec sed ce serait sans doute très simple mais je ne peux pas l'utiliser. Est-ce que vous auriez une piste supplémentaire ?

    Merci

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 165
    Par défaut
    ok merci ce serait presque parfait... si certains chemins ne comportaient pas d'espaces, car voici le résultat

    C:\WINDOWS\system32
    C:\WINDOWS
    C:\WINDOWS\system32\wbem
    C:\Program
    Files\ATI
    Technologies\ATI.ACE\Core-Static
    j'ai essayé d'encadrer les variables avec des guillemets, mais ça ne fonctionne pas

  3. #3
    Membre Expert
    Avatar de Senji
    Inscrit en
    Juillet 2008
    Messages
    1 144
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 144
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "delims=;"%%a In ('SET ^|findstr "^Path="') do for %%b In (%%a) do echo.%%b|find /v /i "path"
    bye

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 165
    Par défaut
    le dernier code s'arrête à la première occurence, seul C:\windows\system32 s'affiche

    PS : il faut un espace après le ;" et avant %%a

  5. #5
    Membre émérite
    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
    Par défaut
    salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for %%i in ("%path:;=" "%") do echo %%~i
    juste pour ...

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    165
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 165
    Par défaut
    Citation Envoyé par maxim_um Voir le message
    juste pour ...
    résoudre le problème

    Merci à tous

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

Discussions similaires

  1. retour chariot GetWindowText
    Par johnlehardos dans le forum MFC
    Réponses: 2
    Dernier message: 29/01/2004, 21h20
  2. Retour chariot
    Par raf_gug dans le forum MFC
    Réponses: 9
    Dernier message: 13/01/2004, 17h54
  3. afficher texte avec retour chariot aprèq requète sql
    Par frenchy371 dans le forum Requêtes
    Réponses: 2
    Dernier message: 07/01/2004, 17h33
  4. retour chariot dans un string
    Par bono dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 29/12/2003, 12h17
  5. Retour chariot dans un TMemo ?
    Par Vincent PETIT dans le forum C++Builder
    Réponses: 7
    Dernier message: 27/08/2002, 18h55

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