zaibon

Per Batch einen Ordner mit der höchsten versionsnr aussuchen

Hi Alle zusammen,

ich habe hier schon eine Runde unter den Batchfragen rumgeklickt um zu sehen ob sich schon jemand mit dem Problem beschäftigt hat, bin aber leider nicht wirklich fündig geworden.

So, jetzt zur Erklärung des leider sehr kryptisch geratenen Titels und meines Problems:

Ich habe ein Programm das nach einem Update immer wieder einen neuen Ordner mit der neuen Versionsnummer des Programms erstellt, und dabei den Ordner mit der vorletzten Nummer löscht.
Es liegen also zwei Ordner mit mit Nummern in etwa wie: 1.6.0.4 und 1.6.0.0 da rum

In dem aktuellsten Ordner muß nach dem Update händisch immer auf eine Datei zugegriffen werden um diese um eine Zeile zu erweitern, sowie noch eine weitere Datei in den Ordner reinkopiert werden.

Kein großes Ding und eigentlich nur Bequemlichkeit dafür eine Batch zu nehmen, aber ich habe gerade Zeit auf der Arbeit und wollte mich da mal etwas einlesen (mit sehr sehr mäßigem Erfolg)

Meine Frage ist: wie bekomme ich es hin das der Ordner mit der höheren Nummer (also der neuere) selektiert wird ohne das ich das von Hand auswählen muß?

Schon mal Danke für's lesen und eventuelle Antworten
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 327700

Url: https://administrator.de/forum/per-batch-einen-ordner-mit-der-hoechsten-versionsnr-aussuchen-327700.html

Ausgedruckt am: 05.05.2025 um 20:05 Uhr

131381
Lösung 131381 27.01.2017 aktualisiert um 13:36:20 Uhr
Goto Top
z.B. so
@echo off & setlocal enabledelayedexpansion
set "folder=D:\Versionsordner"  
set NUM=0
for /D %%a in ("%folder%\*") DO (  
	set f=%%~nxa &set /a f=!f:.=!
	if !f! GTR !NUM! (
		set NUM=!f!
		set LAST=%%a
	)
)
echo %LAST%
oder
@echo off
set "folder=D:\Versionsordner"  
for /f %%a in ('powershell -Executionpolicy ByPass -c "gci '%folder%' -Dir | sort {[int]$_.Name.replace('.','')} -EA SilentlyContinue -Descending | select -First 1 -Expand FullName"') do set "LAST=%%a"  
echo %LAST%
Gruß mik
zaibon
zaibon 27.01.2017 um 13:36:14 Uhr
Goto Top
Argh jetzt hab ich mich verklickt, hoffen wir mal dass das auch zur Lösung beiträgt. xD

Aber auf jeden Fall schon mal tausend Dank für die superschnelle Antwort.
Werd jetzt mal den Rest drumrum basteln und schauen was da so draus wird.

Merci beaucoup