Sie benötigen ein Windows-Skript, um Ordner mit Dateidaten zu erstellen und Dateien in den entsprechenden Ordner zu verschieben

564
Gerlof Leuhof

Ich brauche ein CMD- oder Powershell-Skript oder eine Batch-Datei

  • eine Liste der Dateien durchgehen
  • Erstellen Sie einen Ordner mit dem Datum einer Datei, falls diese noch nicht vorhanden ist
  • Verschieben Sie diese Datei in den entsprechenden Ordner.

Ich habe eine Liste von ungefähr 400 Dateien wie folgt:

enter image description here

Anhand dieses Beispiels sollte das Skript einen Ordner erstellen, der die beiden obersten Dateien enthält 2018-05-16, einen Ordner mit den nächsten 3 Dateien. Am besten 2018-05-17im selben Ordner wie die Dateien, die sich jetzt befinden.

Ich bin unter Windows 8, wenn das einen Unterschied macht.

0

1 Antwort auf die Frage

1
LotPings

Beispielverzeichnis vor

> gci  Verzeichnis: A:\  Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2018-05-16 16:02 14 GOPR0150.MP4 -a---- 2018-05-16 16:10 14 GOPR0151.MP4 -a---- 2018-05-17 01:25 14 GOPR0152.MP4 -a---- 2018-05-17 01:32 14 GOPR0153.MP4 -a---- 2018-05-17 01:32 14 GOPR0154.MP4 

Ausführen dieses kleinen PowerShell-Skripts

## Q:\Test\2018\09\06\SU_1355955.ps ForEach($File in (Get-ChildItem '.\GOPR*.mp4')){ $DestFolder = Join-Path $File.DirectoryName $File.LastWriteTime.ToString('yyyy-MM-dd') if (!(Test-Path $DestFolder)) $File | Move-Item -Destination $DestFolder } 

> gci -recurse -file  Verzeichnis: A:\2018-05-16  Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2018-05-16 16:02 14 GOPR0150.MP4 -a---- 2018-05-16 16:10 14 GOPR0151.MP4  Verzeichnis: A:\2018-05-17  Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 2018-05-17 01:25 14 GOPR0152.MP4 -a---- 2018-05-17 01:32 14 GOPR0153.MP4 -a---- 2018-05-17 01:32 14 GOPR0154.MP4 

Bearbeiten: Abhängig von Ihrem lokalen Datumsformat müssen Sie möglicherweise zu
ändern.ToString('yyyy\-MM\-dd')