Top-Themen

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

Per Move 1000 Dateien ins 1. die nächsten 1K ins nächste Verzeichnis usw.

Frage Entwicklung Batch & Shell

Mitglied: zip1928

zip1928 (Level 1) - Jetzt verbinden

05.09.2007, aktualisiert 06.09.2007, 3265 Aufrufe, 10 Kommentare

Hallo Experten,

wir haben hier z.Zt. 75000 Dateien die möchte ich in 75 Verzeichnisse verschieben. Es soll keine Sortierung o.a. geben

es sollen die Verzeichnisse 01000 02000 03000 04000 ... 10000 11000 usw erstellt werden und dort dann jeweils

maximal 1000 Dateien rein. ich hoffe ihr habt eine Lösung.

Vielen Dank für eure Hilfe.
Mitglied: Biber
05.09.2007 um 07:12 Uhr
Moin zip1928,

willkommen im Forum.
Ist das der ganze Plan oder nur der Teil, den wir wissen müssen?
Hört sich für mich nicht wirklich nach einer zukunftsweisenden Strategie an.

Möchtest Du eventuell darüber reden?

Falls Du Dich auf das rein Handwerkliche beschränken möchtest:
  • Sicherheitsabfrage: Die 1000er-Pakete weder nach Alphabet noch nach Dateidatum sortiert?!?
  • sind Leerzeichen/Sonderzeichen in den Dateinamen oder sind die noch in DOS-8.3-Notation?

Bitte nicht eingeschnappt sein - handwerklich ist es nicht sonderlich anspruchsvoll.
Aber als Problemlösung erscheint mir das Konzept eher suboptimal.

Grüße
Biber
Bitte warten ..
Mitglied: zip1928
05.09.2007 um 09:27 Uhr
Hallo Biber,

die Dateien sind von 3 Überwachungskameras und haben das Format z.b. 20070905-10.11.54_P1.jpg zu erst kommt das Datum dann die Uhrzeit danach P1
für Parkplatz 1 dann ist das noch anstelle "P1" "P2" und "eingangshalle" da ich das
ganze nur zum Archivieren auf Platte brauche habe ich schon 3 Verzeichnisse
erstellt und per Move *P1.* ins passende Verzeichniss verschoben nur haben wir jetzt in jedem dieser Verzeichnisse so ca. 20-30 Tausend Fotos diese zu laden dauert unserem
Chef zulange nun wollte ich das Automatisch verschieben.

Ich hoffe das das Verständlich ist

Grüße
Zacharias
Bitte warten ..
Mitglied: bastla
06.09.2007 um 21:18 Uhr
Hallo zip1928!

Versuch es einmal so:
01.
@echo off & setlocal 
02.
cd /d D:\Daten\P1 
03.
 
04.
set /a Nr=100000 
05.
set /a Anzahl=1000 
06.
set /a Z=%Anzahl% 
07.
 
08.
for %%i in (*.jpg) do call :ProcessFile "%%i" 
09.
goto :eof 
10.
 
11.
:ProcessFile 
12.
set /a Z+=1 
13.
if %Z% leq %Anzahl% goto :MoveIt 
14.
set /a Z=1 
15.
set /a Nr+=%Anzahl% 
16.
set Verz=%Nr:~1% 
17.
md %Verz% 
18.
echo %Verz% 
19.
:MoveIt 
20.
move %1 %Verz%
Das Verzeichnis in der zweiten Zeile musst Du natürlich Deinen Gegebenheiten anpassen.

Falls Du übrigens vielleicht doch lieber eine chronologische Reihung hättest, könntest Du die "for"-Zeile so schreiben:
01.
for /f "delims=" %%i in ('dir /b /od *.jpg') do call :ProcessFile "%%i"
Und, nur zur Sicherheit: Verwende für Deine Tests bitte Kopien und nicht die Originaldaten!

Grüße
bastla
Bitte warten ..
Mitglied: Biber
06.09.2007 um 21:34 Uhr
Fußnote für ängstliche Gemüter zu bastlas Lösung:

Wenn wir tatsächlich von ca 75000 Dateinamen mit je ~20+ Zeichen reden, dann könnte es der CMD.exe ein bisschen Stress machen, diese als "virtuelles File" im Hauptspeicher zu halten.
Wir wissen doch alle, dass es unter Windows laufen soll...

Deshalb eventuell statt dieser Variante:
01.
for /f "delims=" %%i in ('dir /b /od *.jpg') do call :ProcessFile "%%i"
....das übervorsichtige Zwischenspeichern in einer temporären, aber real vorhandenen Datei:
01.
dir /b /od *.jpg>%temp%\AllFiles.lst 
02.
for /f "delims=" %%i in (%temp%\AllFiles.lst) do call :ProcessFile "%%i" 
03.
del %temp%\AllFiles.lst
BTW, wäre es nicht - wenn diese Bildchen eh schon sortiert, archiviert und nach menschlichem Ermessen nie wieder vorgekramt werden, eine Abspeicherung nach Monatsordnern sinnvoller?
01.
2007-08_P1 
02.
2007-08_P2 
03.
2007_08_eingangshalle 
04.
2007-09_P1 
05.
2007-09_P2 
06.
2007_09_eingangshalle
Die Informationen aufgrund der Dateinamen wären ja da...?

Grüße
Biber
Bitte warten ..
Mitglied: zip1928
06.09.2007 um 21:40 Uhr
Hallo Leute,

danke euch es hat alles bestens hingehauen !!!

Läuft zwar immer noch da das ganze über ein NW muß aber es sieht gut aus !


Danke nochmals

Zacharias
Bitte warten ..
Mitglied: bastla
06.09.2007 um 21:53 Uhr
@Biber

... Abspeicherung nach Monatsordnern sinnvoller?
Ich hatte mich ja nach dem nahezu kategorischen "Es soll keine Sortierung o.a. geben" eigentlich kaum getraut, eine zeitliche Ordnung vorzuschlagen, und jetzt sowas.

Das wäre ja ein fast schon unentschuldbarer Verstoß gegen das Prinzip "Wundertüte", und außerdem würdest Du damit dem (fast originalen) Forrest Gump-Zitat: "Ein Verzeichnis (mit 1000 jpg-Files) ist wie eine Schachtel Pralinen - man weiß nie, was man bekommt" doch glatt die Grundlage entziehen ...

Grüße
bastla
Bitte warten ..
Mitglied: bastla
06.09.2007 um 21:57 Uhr
Hallo zip1928!

Freut mich, wenn's geklappt haben wird.

Grüße
bastla
Bitte warten ..
Mitglied: Biber
06.09.2007 um 22:06 Uhr
@bastla
Ich hatte mich ja nach dem nahezu kategorischen "Es soll keine Sortierung o.a. geben" eigentlich kaum getraut, eine zeitliche Ordnung vorzuschlagen, und jetzt sowas.
Na ja, warte erst mal ab, wenn er morgen früh stolz das Ergebnis mit je 1000 Dateien in so sprechenden Verzeichnisnamen wie "01000", "02000", "03000" sieht...
Dann kommt bestimmt die Nachfrage: Wäre das denn ein großer Aufwand, das in Monatsordner wegzukruuschen?"

Aber das warten wir erstmal ab...

Schönen Abend
Biber
Bitte warten ..
Mitglied: bastla
06.09.2007 um 22:20 Uhr
@Biber

Wir wissen ja ohnehin beide, dass Du Recht hast, aber wie hieß es bei Frank Zander (in der "Disco Polka"): Der Wirt will es so.

Bevor mir noch mehr solcher weltbewegender Zitate einfallen, hör ich lieber auf.

Dir auch einen schönen Abend
bastla
Bitte warten ..
Mitglied: bastla
06.09.2007 um 22:41 Uhr
... aber da ich manchmal im Abwarten so schlecht bin:
01.
@echo off & setlocal 
02.
cd /d D:\Daten\P1 
03.
 
04.
for %%i in (*.jpg) do call :ProcessFile "%%i" 
05.
goto :eof 
06.
 
07.
:ProcessFile 
08.
for /f "tokens=1,2 delims=_" %%d in ('echo %~n1') do set Zeitraum=%%d & set Bereich=%%e 
09.
set Verz=%Zeitraum:~0,4%-%Zeitraum:~4,2%_%Bereich% 
10.
if not exist %Verz% md %Verz% 
11.
move %1 %Verz%
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Festplatten, SSD, Raid
Speicher der nächsten Jahre berechnen
Frage von RaversFestplatten, SSD, Raid10 Kommentare

Hallo zusammen, ich bin dabei neue Server bei uns anzuschaffen. Nunmehr stell ich mir die Frage, wie hoch wird ...

Microsoft Office
Serienbrief Nächster Datensatz Wenn
Frage von Druide83Microsoft Office2 Kommentare

Hallo, ist das erste mal dass ich mit Serienbriefen in Word zu tun habe und mir fehlt auch nur ...

Batch & Shell
PowerShell nächste freie Nummer finden
gelöst Frage von derhoeppiBatch & Shell7 Kommentare

Hallo, vor einem knappen Jahr hat mich Uwe bereits einmal zu dem Thema unterstützt. Ich möchte die damalige Anforderung ...

Windows 10
Windows 10: Die nächste Generation von Windows
Information von FrankWindows 1085 Kommentare

Microsoft hat heute viele neue Details zum kommenden Windows 10 veröffentlicht. Hier die wichtigsten Daten dazu: Windows 10 wird ...

Neue Wissensbeiträge
MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 11 StundenMikroTik RouterOS4 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Sicherheit

Sicherheitslücke in HP-Druckern - Firmware-Updates stehen bereit

Information von BassFishFox vor 11 StundenSicherheit

Ein weiterer Grund, dass Drucker keinerlei Verbindung nach "auswaerts" haben sollen. Unter Verwendung spezieller Malware können Angreifer aus der ...

Administrator.de Feedback

Entwicklertagebuch: Die Startseite wurde überarbeitet

Information von admtech vor 14 StundenAdministrator.de Feedback9 Kommentare

Hallo Administrator User, mit dem Release 5.7 haben wir unsere Startseite überarbeitet und die Beiträge und Fragen voneinander getrennt. ...

Vmware

VMware Desktopprodukte sind verwundbar

Information von Penny.Cilin vor 18 StundenVmware

Die VMware-Anwendungen zum Umgang mit virtuellen Maschinen Fusion, Horizon Client und Workstation sowie die Plattform NSX sind verwundbar. Davon ...

Heiß diskutierte Inhalte
Visual Studio
Vb.net-Tool zum Erzeugen einer Outlook-E-Mail
Frage von ahstaxVisual Studio24 Kommentare

Hallo, ich möchte gerne ein vb.net-Tool schreiben, das am Ende eine Outlook-E-Mail erzeugt. Grundsätzlich ist mir klar, wie das ...

Windows Server
RDP macht Server schneller???
Frage von JaniDJWindows Server16 Kommentare

Hallo Community, wir betrieben seit geraumer Zeit diverse virtuelle Maschinen und Server mit Windows Server 2012. Leider haben wir ...

Windows Netzwerk
Netzwerk Neustrukturierung
Frage von IT-DreamerWindows Netzwerk16 Kommentare

Hallo verehrte Community und Admins, bei uns im Haus steht eine Neustrukturierung an. Dafür benötige ich von euch ein ...

Windows 10
Windows 10 dunkler Bildschirm nach Umfallen
Frage von AkcentWindows 1015 Kommentare

Hallo, habe hier einen Windows 10 Rechner der von einem User umgefallen wurde (Beine übers Knie, an den PC ...