Aller au contenu

[Réglé][Batch] Petit problème avec les espaces


freak by nature

Messages recommandés

Membre, 40ans Posté(e)
freak by nature Membre 9 821 messages
Baby Forumeur‚ 40ans‚
Posté(e)

Bonjour :coeur:

Précision préalable : je suis une nouille en batch :snif:

Je bosse actuellement sur un script qui, à partir de la position courante, scanne tous les répertoires et sous répertoires et en extrait les fichiers portant mp3 dans leur nom ou leur extension et écrit leur chemin complet dans un fichier .txt

@ECHO ON
setlocal enableextensions
FOR /F "tokens=*" %%a IN ('DIR /B /S') DO call :SCAN_MP3 %%a
pause
exit
:SCAN_MP3
set folder=%1
echo %folder%| findstr -i mp3 >> listeMP3Home.txt
exit /B

Le hic, c'est que ça marche très bien mais... ça ne scanne pas tout ce qui contient des espaces :blush:

J'ai cherché sur le web et auprès de mes collègues mais aucune solution n'a été dégagée.

Quelqu'un sait ce que je dois faire pour rectifier ça ? :bo:

Merci d'avance :coeur:

Lien à poster
Partager sur d’autres sites

Annonces
Maintenant
Membre, nyctalope, 40ans Posté(e)
Criterium Membre 2 870 messages
40ans‚ nyctalope,
Posté(e)

A priori ça pourrait être quelque chose de tout con comme :

-mettre %1 entre guillemets

-mettre %folder% entre guillemets

-les deux

Essaye déjà ça ; comme je n'ai plus Windows, je ne peux pas faire le test pour toi.

(au pire, un script Perl te ferait ça en 2 temps 3 mouvements, quelque chose comme ce premier jet : )

#! usr/bin/perl
use strict;
use warnings;
my ($folder, $file, @files);

$folder = chomp ($_);

opendir( FOLDER, $folder) or die "Dossier introuvable!\n";
@files = grep( /mp3/ , readdir( FOLDER ) );
closedir (FOLDER);

open( FILE, ">listeMP3home.txt") or die "Impossible de créer le fichier-liste!\n";
print FILE @files;
close FILE;

(edit: arr, à modifier, ça ne scanne pas l'arborescence et ça n'ajoute pas la position du dossier, doit y avoir des options à ajouter mais je ne connais pas ça par cœur) :blush:

Lien à poster
Partager sur d’autres sites

Membre, 40ans Posté(e)
freak by nature Membre 9 821 messages
Baby Forumeur‚ 40ans‚
Posté(e)

Merci pour ta réponse, ça n'a pas fonctionné mais là j'ai honte :coeur:

En fait je bidouillais un script alors que ça, c'est tout juste ce qu'il me faut :blush: :

dir /b /s |findstr /i mp3 >> liste.txt

J'aiiiiiiiii hoooooonte :bo:

Lien à poster
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×