windows - Wilcards i filnavn path calling batch scripts

Indlæg af Hanne Mølgaard Plasc

Problem



Jeg forsøger at skrive et batch script til at ringe til flere andre batch scripts. Alle disse andre scripts har titler begyndende med et nummer 01, 02, 03 osv., Men resten af ​​navnet er et program og en version. Da disse versioner konstant ændre, jeg prøvede at bare kalde på 01 * .bat, snarere end det fulde filnavn, så jeg ikke skulle redigere dette master script.


Mit spørgsmål er, kan jokertegn ikke bruges til at kalde andre batchskripter, eller starte programmer, hvis ja hvordan?


Alternativt er der en bedre måde at gøre ved at gøre dette?


Jeg har lidt kode indtil nu, men jeg har prøvet følgende


Start test*.bat
Call test*.bat
echo for /f "tokens=*" \%\%A IN ('dir /b test*.bat') Start \%\%A


og heller ikke arbejde.

Bedste reference


Du var nær. I din sidste kommando



  • echo viser bare kommandoen, den udfører ikke den

  • Der er ingen grund til at bruge en for /f til at behandle output fra en dir kommando, en simpel for vil være nok

  • Du glemmer do -klausulen i kommandoen for

  • Medmindre du vil udføre alle batchfilerne parallelt, skal du i stedet for en kommando start have en kommando på call.



for \%\%a in (test*.bat) do call "\%\%a"


For hver fil i det angivne sæt ring til den valgte fil