Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Skript zum verschieben von Dateien in 250er Blöcken

Frage Entwicklung Batch & Shell

Mitglied: andrehh

andrehh (Level 1) - Jetzt verbinden

21.06.2010 um 18:08 Uhr, 2734 Aufrufe, 2 Kommentare

Hallo Zusammen,

ich stehe gerade vor einer Aufgabe die ich gerne per Skript erledigen würde.

Ich habe 6 Ordner mit jeweils ca. 10.000 Dateien. Ich möchte nun das jeweils 250 Dokumente in noch nicht vorhandene Unterordner verschoben werden.
Es ist für die nachfolgende Applikation sehr wichtig das maximal 250 Dokumente in diesen Ordnern liegen.

Folgenden Weg müsste also solch ein Skript beschreiten:
1. Einstieg in den ersten der sechs Ordner
2. Anzahl vorhandener Dateien ermitteln
3. Unterordner "1" erstellen und 250 Dokumente dorthin verschieben
4. Unterordner "2" erstellen und 250 Dokumente dorthin verschieben
..
99. Unterordner "97" erstellen und die noch übrig gebliebenen Dokumente dorthin verschieben.

Vielleicht hat ja jemand von euch Idee wie man diese Geschichte elegant lösen könnte. Vielen Dank
Mitglied: LotPings
21.06.2010 um 20:29 Uhr
Hallo andrehh,

die Dateien on the fly zählen und dann einfach den Zähler durch 250 teilen + 1 und du hast den gewünschten Ordner.

Hier eine Batch die alle Dateien im aktuellen Ordner in entsprechende Unterordner verschiebt.

Diese Version erzeigt aber führende Nullen damit es mit dem Sortieren besser klappt.
01.
:: Split-X.cmd 
02.
@Echo off & Setlocal 
03.
Set X=250 
04.
For /F "tokens=1,* delims=[]" %%A in ( 
05.
  'Dir /B/A-D .^|find /N /V "#+#"' 
06.
    ) Do Call :ProcessFile %%A "%%B" 
07.
Goto :Eof 
08.
:ProcessFile 
09.
Set /A "Ordner=(%1-1) / X + 1001, LfdNum=(%1-1)  %% X + 1001" 
10.
Set Ordner=%Ordner:~-3% 
11.
Set LfdNum=%LfdNum:~-3% 
12.
Echo %LfdNum% %Ordner% %2 
13.
:: If Not Exist %Ordner% MD %Ordner% 
14.
:: Move %2 %Ordner%\
Es wir nur angezeigt, zum "scharfmachen" die Doppelpunkte in den letzten beiden Zeilen entfernen
Wenn die Ordnernur 2-Stellige Nummern haben sollen in Zeile 10 die -3 in -2 ändern.

Gruß
LotPings
Bitte warten ..
Mitglied: andrehh
22.06.2010 um 08:22 Uhr
Sehr geil

Vielen vielen Dank dafür
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei nach Erstellungsdatum verschieben (2)

Frage von Kugelschreiber1 zum Thema Batch & Shell ...

Windows 7
gelöst Dateien verschieben Sicheheitswarnung Aktivieren (1)

Frage von Krabbelfiechle zum Thema Windows 7 ...

Batch & Shell
Dateien nach Datum verschieben (4)

Frage von LKDNDK12 zum Thema Batch & Shell ...

VB for Applications
gelöst VB Skript Excel Datei (3)

Frage von Frager zum Thema VB for Applications ...

Neue Wissensbeiträge
Datenschutz

Gefährdeter Datenschutz: Firefox löscht lokale Datenbanken nicht

Information von BassFishFox zum Thema Datenschutz ...

Firewall

PfSense OpenVPN beschleunigen

Tipp von Dobby zum Thema Firewall ...

Utilities

CCleaner 5.33 mit Malware infiziert

(25)

Information von SeaStorm zum Thema Utilities ...

Windows Server

Exchange Server 2016 Probleme auf Server 2016 mit iOS 11 Mailapp

Information von Oneplus zum Thema Windows Server ...

Heiß diskutierte Inhalte
Utilities
CCleaner 5.33 mit Malware infiziert (25)

Information von SeaStorm zum Thema Utilities ...

Festplatten, SSD, Raid
gelöst Problem mit DELL 815R Server und Windows Bluescreen (24)

Frage von Leo-le zum Thema Festplatten, SSD, Raid ...

JavaScript
gelöst Kopierschutz auf Webseite (13)

Frage von honeybee zum Thema JavaScript ...

Windows Server
Änderung Subnetz an AD Standort (13)

Frage von hansdampf zum Thema Windows Server ...