Windows Rajouter nom dossier parent a fichier
Résolu
JulienD63
Messages postés
4
Date d'inscription
Statut
Membre
Dernière intervention
-
JulienD63 Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
JulienD63 Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Faute d'avoir trouvé oú me présenter, je vais commencer tout de suite:
Je suis ingé en génie industriel, mais j'aime beacoup l'informatique.
J'ai déjá fait du C et C++ (petites applications gentilles), et travaille réguliérement en VBa (non c'est bon pas de remarques!!!).
Mais aujourd'hui, j'ai un probléme que je n'arrive pas á résoudre:
je souhaites tranformer le nom de fichiers dans un dossier en rajoutant au début le nom du dossier parent.
Par exemple, si j'ai un fichier "Essai.pdf" dans le dossier "Program", je voudrais renommer automatiquement le fichier en "Program - Essai.pdf".
Voici donc mon probléme: Quel langage utiliser, sachant que je ne peux pas programmer sur un logiciel (je ne souhaites pas installer de compilateur...)? Biensúr, un petit lien vers introduction au langage de programmation serait le bienvenue (mais je peux trouver moi-meme donc pas indispensable).
Quelques pistes pour programmer cette petite application.
Dans l'idée j'imagine une sorte de ChDir avec changement du nom du fichier (du genre Dossier parent & " - " & nom du fichier) pour chaque objet différent d'un dossier (on ne rentre pas dans les sous-dossier).
Pour finir, je tiens á remercier l'ensemble du staf et des membres pour leur source de donnée infinie de résolution de problémes qui me sortent de bien des soucis!
PS: Désolé pour les fautes d'accent j'utilise un clavier QWERTY...
Merci
Faute d'avoir trouvé oú me présenter, je vais commencer tout de suite:
Je suis ingé en génie industriel, mais j'aime beacoup l'informatique.
J'ai déjá fait du C et C++ (petites applications gentilles), et travaille réguliérement en VBa (non c'est bon pas de remarques!!!).
Mais aujourd'hui, j'ai un probléme que je n'arrive pas á résoudre:
je souhaites tranformer le nom de fichiers dans un dossier en rajoutant au début le nom du dossier parent.
Par exemple, si j'ai un fichier "Essai.pdf" dans le dossier "Program", je voudrais renommer automatiquement le fichier en "Program - Essai.pdf".
Voici donc mon probléme: Quel langage utiliser, sachant que je ne peux pas programmer sur un logiciel (je ne souhaites pas installer de compilateur...)? Biensúr, un petit lien vers introduction au langage de programmation serait le bienvenue (mais je peux trouver moi-meme donc pas indispensable).
Quelques pistes pour programmer cette petite application.
Dans l'idée j'imagine une sorte de ChDir avec changement du nom du fichier (du genre Dossier parent & " - " & nom du fichier) pour chaque objet différent d'un dossier (on ne rentre pas dans les sous-dossier).
Pour finir, je tiens á remercier l'ensemble du staf et des membres pour leur source de donnée infinie de résolution de problémes qui me sortent de bien des soucis!
PS: Désolé pour les fautes d'accent j'utilise un clavier QWERTY...
Merci
A voir également:
- Windows Rajouter nom dossier parent a fichier
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Dossier appdata - Guide
- Comment réduire la taille d'un fichier - Guide
8 réponses
Bonsoir
j'ai pas bien compris
sachant que je ne peux pas programmer sur un logiciel (je ne souhaites pas installer de compilateur...)? Biensúr, un petit lien vers introduction au langage de programmation serait le bienvenue
bon tu peut utiliser VB.Net (2005) de préférence,ba pour le code j'ai compris que tu ve le programmer tt seul ( c assez dificile pour un débutant en programation)
mai juste reponde moi si tu as instaler VB.NET pour te donne le code qui fai ca!!!
crdlmnt
j'ai pas bien compris
sachant que je ne peux pas programmer sur un logiciel (je ne souhaites pas installer de compilateur...)? Biensúr, un petit lien vers introduction au langage de programmation serait le bienvenue
bon tu peut utiliser VB.Net (2005) de préférence,ba pour le code j'ai compris que tu ve le programmer tt seul ( c assez dificile pour un débutant en programation)
mai juste reponde moi si tu as instaler VB.NET pour te donne le code qui fai ca!!!
crdlmnt
Bonjour et merci pour vos réponses.
Petit éclaircissement, qui m'a l air nécessaire! Je ne suis pas admin sur mon ordi donc pas d'installation possible (pas possible, et pas le droit...).
Pour moi, le mieux aurait donc été de tout faire en VBa, car Excel, tout le monde l'a, mais il me semble que ce n'est pas réalisable.
Un fichiet .bat pourrait en revanche beaucoup m'ntéressé, mais dans ce cas je vais avoir besoin d'aide car je ne connais pas la phylo de DOS, ni méme comment créer un .bat (fichier text dont on modifie l extension?).
Je tiens á préciser que je suis quand méme loin d'étre débutant en programmation, c'est juste que quand on ne connait pas un langage, on ne va pas inventer les instructions et la phylo!
Merci
Petit éclaircissement, qui m'a l air nécessaire! Je ne suis pas admin sur mon ordi donc pas d'installation possible (pas possible, et pas le droit...).
Pour moi, le mieux aurait donc été de tout faire en VBa, car Excel, tout le monde l'a, mais il me semble que ce n'est pas réalisable.
Un fichiet .bat pourrait en revanche beaucoup m'ntéressé, mais dans ce cas je vais avoir besoin d'aide car je ne connais pas la phylo de DOS, ni méme comment créer un .bat (fichier text dont on modifie l extension?).
Je tiens á préciser que je suis quand méme loin d'étre débutant en programmation, c'est juste que quand on ne connait pas un langage, on ne va pas inventer les instructions et la phylo!
Merci
le fichier de commande suivant devrait le faire. faire une sauvegarde et quelques tests, bien sur
@echo off
rem
rem ## on récupère le dernier champ de la variable %CD%, le dossier courant, dans la variable dir
rem
for /F "delims=\\" %%I in ("%CD%") do (
set dir=%%~nI
rem
rem ## on renome tous les fichiers, avec des " à cause des espaces dans les noms
rem
for %%n in (*.*) do ren "%%n" "%dir% - %%n")
@echo off
rem
rem ## on récupère le dernier champ de la variable %CD%, le dossier courant, dans la variable dir
rem
for /F "delims=\\" %%I in ("%CD%") do (
set dir=%%~nI
rem
rem ## on renome tous les fichiers, avec des " à cause des espaces dans les noms
rem
for %%n in (*.*) do ren "%%n" "%dir% - %%n")
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci.
Pouvez vous m'expliquer plus en détail le code svp?
@echo off => pas d affichage?
Ensuite il y a une boucle for mais avec quels parametres ( "Pour chaque ??? dans le dossier courant changer le nom du fichier (set dir) en ???)
La derniere ligne "Pour chaque ??caracteres spéciaux??? remplacer ce caractére spécial par " - ".
A quoi correspond le %%n, le %dir%?
Merci
Pouvez vous m'expliquer plus en détail le code svp?
@echo off => pas d affichage?
Ensuite il y a une boucle for mais avec quels parametres ( "Pour chaque ??? dans le dossier courant changer le nom du fichier (set dir) en ???)
La derniere ligne "Pour chaque ??caracteres spéciaux??? remplacer ce caractére spécial par " - ".
A quoi correspond le %%n, le %dir%?
Merci
en DOS, il faut utiliser, pour les variables, % interactivement,et %% dans un fichier de commande
une variable de l'environnement s'utilise avec %nom%, une variable d'un FOR avec %n ou %%n
la variable CD contient le chemin complet
$ echo %CD%
C:\Documents and Settings\xxxx\Mes documents\src\zzz
le séparateur entre les noms de dossiers est \
$ for /F "delims=\\" %I in ("%CD%") do echo %~nI
zzz
%~nI Développe %I en nom de fichier seulement, voir dans l'Aide Windows
on garde le nom dans dir
set dir=%%~nI
et on boucle sur tous les fichiers (*.*) en exécutant un ren (renommer), %%n prenant le nom de chaque fichier
for %%n in (*.*) do ren "%%n" "%dir% - %%n")
une variable de l'environnement s'utilise avec %nom%, une variable d'un FOR avec %n ou %%n
la variable CD contient le chemin complet
$ echo %CD%
C:\Documents and Settings\xxxx\Mes documents\src\zzz
le séparateur entre les noms de dossiers est \
$ for /F "delims=\\" %I in ("%CD%") do echo %~nI
zzz
%~nI Développe %I en nom de fichier seulement, voir dans l'Aide Windows
on garde le nom dans dir
set dir=%%~nI
et on boucle sur tous les fichiers (*.*) en exécutant un ren (renommer), %%n prenant le nom de chaque fichier
for %%n in (*.*) do ren "%%n" "%dir% - %%n")
Bonjour tous,
Tout a fait faisable en VBA...
Si nécessaire, possibilité de changer tout un répertoire d'un seul coup.
A+
Tout a fait faisable en VBA...
Sub RenommerFichier(CheminEtFichier) 'le paramètre doit être du type 'C:\Répertoir1\Répertoir2\NomFichier.ext Dim TB Dim NomDest As String TB = Split(CheminEtFichier, "\") NomDest = Left(CheminEtFichier, Len(CheminEtFichier) - Len(TB(UBound(TB)))) NomDest = NomDest & TB(UBound(TB) - 1) & " - " & TB(UBound(TB)) 'retour = 'C:\Répertoir1\Répertoir2\Répertoir2 - NomFichier.ext 'Renomme le fichier Name CheminEtFichier As NomDest End Sub
Si nécessaire, possibilité de changer tout un répertoire d'un seul coup.
A+
Super!
Merci á vous deux!
Dubcek, promis je me met au DOS car ca a l air faisable comparé a du C, il faut par contre que je travaille les variables et les instructions.
Lermitte222, je ne connaissais pas la fonction Name comme tu l'as utilisé!
Bon je vais travailler sur tout ca, mais pour le coup, je pense que je peux annoncer un grand RESOLU!!
Encore merci
Cordialement,
Merci á vous deux!
Dubcek, promis je me met au DOS car ca a l air faisable comparé a du C, il faut par contre que je travaille les variables et les instructions.
Lermitte222, je ne connaissais pas la fonction Name comme tu l'as utilisé!
Bon je vais travailler sur tout ca, mais pour le coup, je pense que je peux annoncer un grand RESOLU!!
Encore merci
Cordialement,