windows batch
Répondre à la discussion
Affichage des résultats 1 à 25 sur 25

windows batch



  1. #1
    samoz

    windows batch


    ------

    Bonjour,

    Je cherche à faire un batch qui permette de chercher tous les fichiers jpg, par exemple, dans la totalité de l'ordinateur et qui attribue une nouvelle extension à ces fichiers.

    J'espère que je suis assez clair !!

    Merci

    Sam

    -----

  2. #2
    satinas

    Re : windows batch

    Bonjour

    pour lister les fichiers
    for /r c:\my\dir %%g in (*.jpg) do echo %%g

    pour les renommer
    for /r c:\my\dir %%g in (*.jpg) do ren "%%g" "%%~ng.new"

    %%g récupère le nom complet de chaque fichier -> drive:\path\filename.ext
    %%~ng est un extrait de %%g ne contenant que filename

  3. #3
    samoz

    Re : windows batch

    je suis une bille !

    Il faut mettre ces lignes de commandes dans un fichier .bat ?

  4. #4
    Jack
    Modérateur

    Re : windows batch

    La commande "for" me semble convenir pour ce que tu cherches:https://technet.microsoft.com/en-us/.../bb490909.aspx

    PS: J'étais parti faire autre chose sans rafraichir ma page. Du coup, je n'ai pas vu la réponse de satinas.
    Dernière modification par Jack ; 08/08/2016 à 15h48.

  5. A voir en vidéo sur Futura
  6. #5
    samoz

    Re : windows batch

    j'ai mis cela dans un .bat mais cela ne fonctionne pas !

  7. #6
    satinas

    Re : windows batch

    Rajoute une ligne avec le mot pause en fin du fichier bat, pour éviter que la fenêtre ne se ferme en fin d'exécution, si tu l'a lancé en cliquant dessus.
    Donne nous le contenu du fichier bat, et le message d'erreur, s'il y a eu message d'erreur.

  8. #7
    samoz

    Re : windows batch

    j'ai mis les lignes telles quelles

    Message erreur : %%g était inattendu

  9. #8
    satinas

    Re : windows batch

    tu ne réponds pas aux demandes

  10. #9
    samoz

    Re : windows batch

    Le contenu de mon fichier bat :

    for /r c:\my\dir %%g in (*.jpg) do echo %%g
    for /r c:\my\dir %%g in (*.jpg) do ren "%%g" "%%~ng.new"

    pause

  11. #10
    satinas

    Re : windows batch

    c:\my\dir c'était pour l'exemple, il faut mettre "c:\" à la place si tu veux traiter tous les fichiers du disque C
    new c'était aussi pour l'exemple, tu mets l'extension que tu veux

    Fais un premier bat avec une seule ligne, la première ligne (echo)
    Si son exécution affiche bien tous les fichiers, tu crées un second bat qui contient la 2ème ligne (ren), qui lui renommera
    Toujours terminer par pause
    Dernière modification par satinas ; 08/08/2016 à 16h47.

  12. #11
    samoz

    Re : windows batch

    j'ai changé mais j'ai :

    %%g était inattendu

  13. #12
    satinas

    Re : windows batch

    t'as encore oublié de donner le contenu du fichier bat ...
    Dernière modification par satinas ; 08/08/2016 à 16h54.

  14. #13
    samoz

    Re : windows batch

    for /r c:\dir %%g in (*.jpg) do echo %%g

    pause

  15. #14
    satinas

    Re : windows batch

    Tu n'as pas l'air de savoir ce qu'est un dossier Windows, pas grave, mais pour bricoler le contenu de ton disque, vaudrait mieux se documenter un peu, sur comment sont stockés les fichiers.

    for /r "c:\" %%g in (*.jpg) do echo %%g
    Dernière modification par satinas ; 08/08/2016 à 17h02.

  16. #15
    samoz

    Re : windows batch

    En effet je n'y connais rien !!

    pour le second bat j'ai accès refusé :

    for /r "c:\" %%g in (*.jpg) do ren "%%g" "%%~ng.toto"

  17. #16
    satinas

    Re : windows batch

    Est-ce que je dois en déduire que le premier bat s'est bien passé ?
    Donne le message d'erreur complet

    Il faut bien sur travailler sur un un dossier pour lequel tu as les droits d'accès.
    Dernière modification par satinas ; 08/08/2016 à 17h11.

  18. #17
    samoz

    Re : windows batch

    oui en effet les 2 fonctionnent ! merci

    pour ma gouverne que signifie %%g ?

    Egalement est-il possible que l'on décide de l'extension à mettre au moment ou le bat s’exécute ?

    Merci encore

  19. #18
    satinas

    Re : windows batch

    Cela correspond à la syntaxe du langage batch de Windows.
    Le double %% désigne la variable g associée à la boucle for. Elle prend comme valeur successivement tous les noms complets des fichiers recherchés (*.jpg)

    Lance l'explorateur Windows et étudie un peu l'arborescence des fichiers sur le disque.
    En fin de compte, la commande for avec C:\ était dangereuse car si tu es en mode administrateur, tu risques de renommer tous les fichiers y compris les jpg internes de Windows, avec de sacrées surprises derrière.

    Ce qu'il faut faire c'est travailler sur ton dossier personnel, par exemple :
    for /r "c:\users\xxxxx" %%g in (*.jpg) do ren "%%g" "%%~ng.toto"
    Pour la nouvelle extension, tu remplaces toto par ce que tu veux.

  20. #19
    satinas

    Re : windows batch

    Pour la saisie de paramètres, la commande set /p ...
    Regarde sur le net. Tu dois t'y mettre, ou te contenter d'un fichier certes simple, mais efficace.

  21. #20
    samoz

    Re : windows batch

    c'est super intéressant en effet ! et pour faire une interface graphique en rapport avec mon bat tu me conseilles quoi ?

  22. #21
    Stan_94

    Re : windows batch

    Hello,
    interface graphique et fichier batch ne font pas bon ménage me semble-t-il...
    Pour moi du batch, c'est en ligne de commande via la console uniquement.
    Sauf, peut-être, à se mettre à Powershell mais c'est une autre histoire !
    j'aimerais bien avoir l'avis de "pro".

  23. #22
    satinas

    Re : windows batch

    Le bash Linux vient d'atterrir sur Windows 10, ça peut se relever bien pratique.

  24. #23
    samoz

    Re : windows batch

    bonjour,

    Suite à ces manip efficaces, j'essaye en vain de pouvoir afficher une miniature des nouveaux fichiers créés à savoir, lorsque j'ouvre mon fichier.toto je l'associe avec visionneuse et la photo apparaît par contre je n'ai pas la miniature dans l'explorateur.

    J'ai dupliqué la clef .jpg dans la BDR en .toto mais cela ne change rien.

    Une idée ??

    Merci

  25. #24
    satinas

    Re : windows batch

    L'extension du fichier modifiée ne permet plus à l'explorateur Windows de savoir que c'est une image.
    Seul un logiciel qui analyse le contenu du fichier pourra l'afficher.
    Etrange de vouloir modifier une extension qui est là pour indiquer dans quel format l'image est codée.

  26. #25
    samoz

    Re : windows batch

    je pensais que l'on pouvait déclarer l'affichage des miniatures dans la base de registre !
    tant pis

Discussions similaires

  1. Récuperer en variable une partie du nom de fichier avec un Batch sous Windows 7 ?
    Par JC-Macintosh dans le forum Programmation et langages, Algorithmique
    Réponses: 7
    Dernier message: 22/05/2016, 13h24
  2. Batch Windows et PDFCreator - Impression images email
    Par Jmfort dans le forum Programmation et langages, Algorithmique
    Réponses: 0
    Dernier message: 27/01/2014, 15h11
  3. controler le status d'un service Windows par un batch
    Par yowhi dans le forum Programmation et langages, Algorithmique
    Réponses: 2
    Dernier message: 27/01/2012, 16h55
  4. [Biotechnologie] réacteurs batch et fed batch
    Par invite899441b9 dans le forum Biologie
    Réponses: 1
    Dernier message: 21/11/2010, 10h53
  5. [Biotechnologie] batch simple et batch soutiré
    Par killboul dans le forum Biologie
    Réponses: 0
    Dernier message: 06/11/2010, 11h32