Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Kopiere nur jedes x-te Bild oder Datei

Frage Entwicklung Batch & Shell

Mitglied: mc-doubleyou

mc-doubleyou (Level 2) - Jetzt verbinden

17.10.2011, aktualisiert 18.10.2012, 3269 Aufrufe, 3 Kommentare

Hallo zusammen,

ich habe ein Problem, ich habe aus versehen statt alle 60 min, alle 5 min ein Bild erzeugt.

Nun würde ich gerne nur jedes 12 te Bild kopieren und so wieder nur ein Bild pro Stunde haben.

Der KopierBefehl ist mir natürlich bekannt aber ich habe leider keine Ahnung wie ich Bild 2-11 vom Kopieren auslasse.

Danke!

lg mc-dy
Mitglied: bastla
17.10.2011 um 10:38 Uhr
Hallo mc-doubleyou!

Unterliegen die Dateinamen der Bilder eigentlich der Geheimhaltung?

Anyhow: Schematisch wird es in etwa auf:
01.
@echo off & setlocal 
02.
set /a Auswahl=12 
03.
 
04.
pushd "D:\Bilder" 
05.
for /f "tokens=1* delims=:" %%i in ('dir /b /a-d /on *.jpg^|findstr /n "^"') do call :ProcessFile %%i "%%j" 
06.
popd 
07.
goto :eof 
08.
 
09.
 
10.
:ProcessFile 
11.
set /a Modulo=%1 %% Auswahl 
12.
if %Modulo% neq 1 goto :eof 
13.
echo Kopiere %2 
14.
goto :eof
hinauslaufen ...

Grüße
bastla

[Edit] "pushd" / "popd" und "/a-d" ergänzt
Bitte warten ..
Mitglied: mc-doubleyou
17.10.2011 um 11:42 Uhr
WOW,

und mal wieder verstehe ich genau nichts -.-

Bildername baut sich wie folgt auf: NAME_DATUM_ScreenNUMMER (Sortierung ist richtig)

Auswahl mit welchem Bild begonnen wir gibt es so keine oder? (Muss nicht sein wäre aber evtl. nicht schlecht)
Weiters verstehe ich nicht wo hier das Ziel angegeben wird ich sehe nur die Quelle.

Mal ganz abgesehend davon das ich bis jetzt nicht verstehe wofür SETLOCAL da ist und was im Bereich von :PROCESSFILE passiert.
Die for Abfrage hingegen erscheint schon eher einleuchtend zumal es nicht meine erste ist.

Wäre nett wenn erklärungen folgen würden damit ich das Script optimieren kann.

Danke!

lg mc-dy
Bitte warten ..
Mitglied: bastla
17.10.2011, aktualisiert 18.10.2012
Hallo mc-doubleyou!

Die Zeile 11 ist ja auch nur eine Demo - einen "copy"-Befehl wirst Du hoffentlich selbst hinbekommen ...
Kurze Erklärung:
Die "for"-Schleife erzeugt einfach eine geordnete (derzeit nach Name, da ich mal auf Verdacht eine vernünftige Namensgebung vorausgesetzt hatte, auf Wunsch aber auch nach Erstelldatum mit "/od /tc") und nummerierte Liste der Dateien im angegebenen Ordner, wobei die Nummer als %1 und der Name als %2 im (für jede Datei) aufgerufenen Unterprogramm ":ProcessFille" ankommt.

Dort wird mit einer Modulo-Berechnung (= Ermittlung des Divisionsrests) eine Datei nur dann weiter verarbeitet, wenn dieser Divisionsrest genau 1 ist - demzufolge (beim verwendeten Teiler 12) die Dateien mit den Laufnummern 1, 13, 25, ...

Um mit einer bestimmten Datei zu beginnen, genügt es, von Hand vorweg alle älteren (bzw allgemein: in der Sortierung davor liegenden) Dateien zu entfernen.
Oben habe ich noch Kleinigkeiten angepasst, damit sicher nur Dateien (und keine Ordner) erfasst und der Quellpfad automatisch berücksichtigt werden.
"setlocal" habe ich zB hier kurz erklärt ...

Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst Powershell oder Batch-Task: Kopiere Datei x mal und benenne diese um (2)

Frage von Lorderich zum Thema Batch & Shell ...

Batch & Shell
Per Batch eine XLS-Datei in eine TXT-Datei umwandeln (5)

Frage von skiing69 zum Thema Batch & Shell ...

Windows 7
Gesperrte OneDrive Datei lässt sich nicht löschen (3)

Frage von malika zum Thema Windows 7 ...

Batch & Shell
gelöst Zeiten in .txt datei auslesen und Differenz berechnen (10)

Frage von meex87 zum Thema Batch & Shell ...

Neue Wissensbeiträge
RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Drucker und Scanner

Samsung SL-M4025ND, firmware update und (kompatible) Tonerkassetten

(1)

Erfahrungsbericht von markus-1969 zum Thema Drucker und Scanner ...

Router & Routing

PfSense auf Supermicro Intel Xeon D-15x8 SoC Bare Bone

Tipp von Dobby zum Thema Router & Routing ...

Heiß diskutierte Inhalte
Windows 10
Windows für Privatanwender "nicht mehr handhabbar" (25)

Frage von FA-jka zum Thema Windows 10 ...

LAN, WAN, Wireless
Brauche Hilfe: Mit (schnellem) WLAN Strecke überbrücken (22)

Frage von pierrehansen zum Thema LAN, WAN, Wireless ...

Basic
Programmierung von Windows Programmen (10)

Frage von Ghost108 zum Thema Basic ...