Seite 1 von 1
batch move alles was nicht 080 enthält
#1
geschrieben 19. November 2018 - 12:32
Hallo,
versuche mit einer batch Datei aus einem Verzeichniss (ohne Unterverzeichnisse) alles zu verschieben was nicht 080 im Dateinamen enthält.
Könnte mir vieleicht jemand helfen.
VG
GSO
versuche mit einer batch Datei aus einem Verzeichniss (ohne Unterverzeichnisse) alles zu verschieben was nicht 080 im Dateinamen enthält.
Könnte mir vieleicht jemand helfen.
VG
GSO
Anzeige
#3
geschrieben 19. November 2018 - 13:19
for /f %%i in ('dir /b "080" Y:\91\*.jpg') do move %%i Y:\91\Fotoba
aber igend wie verschiebt er immer alles.
aber igend wie verschiebt er immer alles.
#4 _d4rkn3ss4ev3r_
geschrieben 19. November 2018 - 13:22
Du musst das move erst in einem Loop packen und vorher den Dateinamen übergeben.
Also statt "do move" -> set datei=%%i &goto :loop
Und bei :Loop
Dann die befehle +
Goto :eof
Also statt "do move" -> set datei=%%i &goto :loop
Und bei :Loop
Dann die befehle +
Goto :eof
#5
geschrieben 19. November 2018 - 13:54
for /f %%i in ('dir /b "080" Y:\91\*.jpg') set datei=%%i &goto :loop Y:\91\Fotoba Goto :eof
meinst du so?
meinst du so?
#6
geschrieben 19. November 2018 - 19:10
Eh... nope, so wird das nichts. Sorry.
Immer schön eins nach dem anderen:
- Alle Dateien
- die nicht 080 im Namen haben
- sollen verschoben werden.
Also:
Note: ungetestet.
Immer schön eins nach dem anderen:
- Alle Dateien
- die nicht 080 im Namen haben
- sollen verschoben werden.
Also:
If Not Exist Y:\91\Fotoba\NUL MkDir Y:\91\Fotoba If ErrorLevel 1 Goto :Error for /f %%i in ('dir /b Y:\91\*.jpg | find /v "080"') do @( move %%i Y:\91\Fotoba ) Goto End :Error echo Konnte Verzeichnis nicht erstellen - Namenskonflikt? Goto End :End
Note: ungetestet.
Dieser Beitrag wurde von RalphS bearbeitet: 19. November 2018 - 19:14
#7
geschrieben 21. November 2018 - 14:33
y:\91>test.bat
y:\91>If Not Exist Y:\91\Fotoba\NUL MkDir Y:\91\Fotoba
y:\91>If ErrorLevel 1 Goto :Error
"|" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
y:\91>for /f %i in ('dir /b Y:\91\*.jpg | find /v "080"') do @(
y:\91>run
klappt leider nicht.
y:\91>If Not Exist Y:\91\Fotoba\NUL MkDir Y:\91\Fotoba
y:\91>If ErrorLevel 1 Goto :Error
"|" kann syntaktisch an dieser Stelle nicht verarbeitet werden.
y:\91>for /f %i in ('dir /b Y:\91\*.jpg | find /v "080"') do @(
y:\91>run
klappt leider nicht.
#8
geschrieben 22. November 2018 - 20:58
@echo off Setlocal EnableDelayedExpansion set quelle=y:\91 set ziel=y:\91\Fotoba If Not Exist %ziel%\NUL ( MkDir %ziel% If ErrorLevel 1 ( echo Fehler bei der Erstellung von %ziel% goto End ) ) for /f "tokens=*" %%D in ('dir /b ^"%quelle%\*.jpg^"') DO ( set filename=%%D set tempname=!filename:080=! if "!filename!"=="!tempname!" ( echo Verschiebe "!quelle!\!filename!" move "!quelle!\!filename!" "!ziel!\" If ErrorLevel 1 ( echo Fehler beim Verschieben von "!quelle!\!filename!" goto End ) ) ) :End
Das sollte jetzt alle JPG Dateien von y:\91 nach y:\91\Fotoba kopieren, welche nicht 080 im Dateinamen habe.
Hoffe, das ich das so richtig verstanden habe.
Ich bin kein Toilettenpapier-Hamster.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
---
Ich bin ein kleiner, schnickeldischnuckeliger Tiger aus dem Schwarzwald.
Alle haben mich ganz dolle lila lieb.
Thema verteilen:
Seite 1 von 1