BATCH - Découper variable et récup. dernier

Résolu/Fermé
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 - 8 juil. 2009 à 17:53
dubcek Messages postés 18728 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 29 mai 2024 - 9 juil. 2009 à 09:03
Bonjour,

J'ai un nouveau problème en Batch :p

J'ai une variable contenant l'URL d'un fichier que l'utilisateur aura indiqué. Maintenant j'aimerai récupérer seulement le nom de fichier sur cette URL, par exemple sur http://www.site.com/dossier/fichier.txt je souhaiterai pouvoir récupérer seulement fichier.txt ...

Je sais que c'est possible de découper l'adresse avec une boucle FOR et un délimiteur / (slash) mais après pour sélectionner ce que je veux garder il faut que j'indique après quelle slash se trouve ce que je veux récupérer. Seulement comme c'est un utilisateur qui entre l'URL je ne peux pas savoir combien de slashs il y a :)

Alors est ce que vous connaissez une solution pour utiliser la boucle FOR avec délimiteur slash dans l'autre sens ? Que la boucle compte de droite à gauche et que je lui dise de prendre tout avant le premier slash rencontré quoi :)

Merci d'avance ! :)
A voir également:

2 réponses

dubcek Messages postés 18728 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 29 mai 2024 5 615
9 juil. 2009 à 09:03
hello
$ set URL=http://www.site.com/dossier/texte.txt
$ @echo off
for %a in ("%URL%") do echo %~nxa
texte.txt
1
kelsett Messages postés 353 Date d'inscription dimanche 9 juillet 2006 Statut Membre Dernière intervention 13 octobre 2014 62
8 juil. 2009 à 19:39
Bon finalement après recherche j'ai réussi à trouver ceci, qui me retourne le nom et l'extension du fichier :

@echo off

setlocal

set filePath=http://www.site.com/dossier/texte.txt

call :GETFILEPARTS "%filePath%"

goto :EOF

:GETFILEPARTS

set FileName=%~n1
set FileExt=%~x1

echo Nom du fichier : %fileName%
echo Extension : %fileExt%

pause

exit


J'espère que ça pourra servir à d'autres :)
0