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 :

Guillemets dans mon IN [Batch]


Sujet :

Scripts/Batch

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 150
    Par défaut Guillemets dans mon IN
    Bonjour à tous,
    Je viens vers vous car je sais pas trop comment me sortir d'une sacrée impasse.
    J'explique le pb :
    info : je n'ai accès qu'en LECTURE au folder!!

    ce que mon batch doit faire:

    1/ faire un dir sur le folder
    2/ pour chaque file (en txt forcément), récupérer toutes les lignes sauf la n°1
    3/ concatener tout ca dans un autre file

    voici ce que j'ai reussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for /f "tokens=*" %%i in ('dir F:\clients\All /b/s/a-d') do (
    for /f "tokens=* skip=1" %%j in ('%%i') do echo %%j >> C:\USERS\tok.txt
    )
    Mon souci se situe dans mon %i car fichiers sont composés d'espace or je ne peux pas les renommer...

    Bref quelqu'un peut me dire ce que je dois faire pour que ca marche...
    Je pense qu'il faut mettre des guillemets quelque part mais ou et comment?

    Quelqu'un peut m'aider... merci

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Mai 2009
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2009
    Messages : 13
    Par défaut
    pas de guillemets autour de %%i dans les 2e for,
    guillemets = commande
    pas de guillemets = liste de fichiers
    or en l'occurence, tu passes le nom de fichier dans %%i, si tu l'utilise comme une commande il lance le fichier (donc si c'est un .txt, il l'ouvre avec notepad)

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 150
    Par défaut
    J'ai testé mais ca marche pas car en fait il y des espaces dans mes fichiers.
    exemple: F:\clients\All\Martin Henri.txt

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 252
    Par défaut
    for /?


    "Pour les noms de fichiers contenant des espaces, placez les noms de fichiers entre guillemets doubles. Afin d'utiliser ainsi les guillemets doubles, vous devez ‚galement utiliser l'option usebackq, faute de quoi les guillemets doubles seraient interprétés comme définissant une chaine littérale … analyser."

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for /f "tokens=*" %%i in ('dir F:\clients\All /b/s/a-d') do (
    for /f "usebackq tokens=* skip=1" %%j in ("%%i") do echo %%j >> C:\USERS\tok.txt
    )
    Peut être que comme ca ca marche ?

  5. #5
    Inactif  
    Avatar de Mac LAK
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    3 893
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 893
    Par défaut
    Solution bourrin, mais qui marche bien quand tu as des soucis de "reconnaissance" entre fichiers/commandes : tu forces le fichier à être redirigé via type :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    for /f "tokens=* skip=1" %%j in ('type "%%i"') do echo %%j >> C:\USERS\tok.txt
    Ce n'est pas forcément le plus élégant possible, mais ça a le mérite d'être assez compréhensible.
    Mac LAK.
    ___________________________________________________
    Ne prenez pas la vie trop au sérieux, de toutes façons, vous n'en sortirez pas vivant.

    Sources et composants Delphi sur mon site, L'antre du Lak.
    Pas de question technique par MP : posez-la dans un nouveau sujet, sur le forum adéquat.

    Rejoignez-nous sur : Serveur de fichiers [NAS] Le Tableau de bord projets Le groupe de travail ICMO

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    150
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 150
    Par défaut
    Merci a vous pour vos solutions.
    J'en ai deux pour le prix d'une

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2008
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2008
    Messages : 252
    Par défaut
    UR WELCOME ^^

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

Discussions similaires

  1. [Lien]erreur dans mon programme python
    Par durnambule dans le forum Général Python
    Réponses: 11
    Dernier message: 29/01/2004, 14h59
  2. [langage] algo de bissection dans mon code
    Par killy dans le forum Langage
    Réponses: 5
    Dernier message: 19/01/2004, 18h35
  3. problème de guillemets dans une formule shell
    Par dim_italia dans le forum VBA Access
    Réponses: 7
    Dernier message: 18/08/2003, 12h46
  4. Réponses: 7
    Dernier message: 26/06/2003, 09h11
  5. [] Utiliser AVI d'une DLL dans mon programme
    Par seb.49 dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 02/05/2003, 14h52

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