Bonjour à tous,
Malgré de nombreuses recherches, je n'arrive pas à lancer mon script... Qui a pourtant une vocation très simple.
J'ai écumé de nombreux forums, promis, mais rien n'y fait :
Je veux pouvoir lancer ce .bat, qui doit :
- récupérer le chemin actuel (ou est le bat) : set actualPath = %~dp0 ;
- demander un numéro à l'utilisateur : set /p numJira = "Numero de Jira ?" ;
- mettre en forme le nom du futur dossier ; il doit être "JIRA_{numJira} - " où numJira est l'entrée utilisateur ci-dessus ;
- créer le nouveau dossier avec le nom adéquat en copiant les files du dossier source.
Figurez-vous que j'y suis depuis un sacré bout de temps, impossible d'y parvenir, je connais très mal (euphémisme) la façon dont utiliser les variables en .bat, je suis complètement novice dans ce langage.
Ma tentative :
Code Batch : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 @echo off REM @echo off permet de ne pas afficher les lignes REM REM xcopy "Nom du répertoire à copier" "Destination cible" /e /i REM xcopy "%appdata%" "f:\Prog Backup" /e /ixcopy REM e : "Copie les répertoires et sous-répertoires, y compris ceux qui sont vides" REM i : "Si la destination n'existe pas et que plus d'un fichier est copié, considérer la destination comme devant être un répertoire.". Donc, il ne te demandera pas de question pour l'utilisation de la commande. REM %CD% rép courant ! REM xcopy "%CD%JIRA_modele" "%CD%" /e REM set origine = "./JIRA_modele" REM en ps1 (en powerShell) --> REM $sourcepath= get-item "actualPath\nom.ext" REM copy-item "$sourcepath" "destpath" -recurse REM $sourcepath="C:\Users\Alexis MASSON\Desktop\PROJET FED - Janvier 19\JIRA_modele" REM $OriginFolder=(get-item -path "C:\Users\Alexis MASSON\Desktop\PROJET FED - Janvier 19\JIRA_modele" -Filter *| fl).name REM $NewName=Add-Fol REM copy-item $sourcepath -Destination "C:\Users\Alexis MASSON\Desktop\PROJET FED - Janvier 19\($_.newname)" -Recurse REM #$($_.newfilename) set actualPath = %~dp0 set cible = %actualPath% set /p numJira = "Numero de Jira ?" set entete = "JIRA_" set fintete = " - " REM tentative de concatenation... set newFolderName = %entete%%numJira%%fintete% echo %newFolderName% mkdir %newFolderName% pause xcopy /S /E /H %actualPath%"/JIRA_modele" newFolderName pause
A mon avis la concaténation du titre du futur dossier n'est pas bonne,
Et ma façon de copier non plus à cause des variables. Ceci n'est que ma version actuelle, j'ai tenté pas mal de choses ...
Toute aide sera la bienvenue !
Merci d'avance
J'ai trouvé des informations comme ici mais je n'arrive pas à bien piger toute la syntaxe, bien différente du Java, Apex, Js, VBA et autres langages dans lesquels j'ai un peu plus d'habitudes (et encore)
Nb : en pj, une photo montrant ou est le .bat et le folder JIRA_modele qui est celui à copier
Nb : il y a quelques REM, qui correspondent juste à quelques résultats de mes recherches sur le sujet, dont des infos sur du powerShell mais je n'en fais pas ici,
Le code est simplement au bout
Edit : Je lis par exemple ici un commentaire, qui me fait penser qu'en fait c'est beaucoup trop compliqué pour un novice dans ce langage, d'écrire un truc même simple.
Il faut déjà se farcir un paquet de docs ... Pour comprendre ne serais-ce que "%~dp0"
Décourageant![]()
Partager