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
GELÖST

Dateien mit Bedingung löschen

Frage Entwicklung Batch & Shell

Mitglied: passa123

passa123 (Level 1) - Jetzt verbinden

25.04.2013 um 14:43 Uhr, 3404 Aufrufe, 14 Kommentare, 1 Danke

Ich möchte eine Batch-Datei erstellen mit der ich meinen Datenmüll entfernen kann.

Ich habe in meinen Foto-Ordnern Dateien mit den Endungen .jpg und .raw . wenn ich die Fotos aussortiere, lösche ich die jpg-Dateien. Nun sollte mein Skript die dazugehörigen raw-Dateien löschen.

Bedingung: Wenn die Datei mit dem gleichen Namen schon im gleichen Ordner vorhanden ist, darf sie bleiben.
Sonst: Löschen

Das Skript sollte nach Möglichkeit auch Unterordner einbeziehen.

Vielen Dank.
passa
Mitglied: Noobstar0815
25.04.2013 um 14:51 Uhr
Also um es noch mal zu verstehen...
Du hast einen Ordner, hast die beiden Dateiendungen .jpg und .raw . Ich nehme an die .raw Dateien sind Kopien vom .jpg und haben denselben Namen? Und du möchtest jetzt ein Skript haben, was dir raussucht, ob es die .raw Datei auch als .jpg gibt, die abgesehen von der Dateiendung den selben Namen hat, und wenn nicht, soll die .raw gelöscht werden?
Bitte warten ..
Mitglied: passa123
25.04.2013 um 15:17 Uhr
Genau das meine ich.
(Die .raw Datei ist die Aufnahme ohne Komprimierung. Diese Dateien werden (bei gegebener Einstellung) beim Fotografieren erstellt und dienen zur Weiterbearbeitung.)
Bitte warten ..
Mitglied: Noobstar0815
25.04.2013 um 15:22 Uhr
Hmm, also, ich kann dir den Denkweg schreiben, den Code bekomm ich aber nicht auf die Reihe :D
Du müsstest mittels for Schleife den Namen einer .raw Datei nehmen, und dann prüfen ob eine .jpg mit gleichem Namen da ist, wenn nicht löschen. Weiter weiß ich nicht, tut mir leid :/
Bitte warten ..
Mitglied: Endoro
25.04.2013, aktualisiert um 17:02 Uhr
Hallo Leute,

ich bin sicher, dass es hier in dem schicken Forum dazu schon Antworten gibt, auch wenn ich die jetzt nicht gesucht hab.
01.
for %%i in (*.raw) do if exist "%%~ni.JPG" echo del "%%~fi"
Gruss!
Bitte warten ..
Mitglied: colinardo
25.04.2013, aktualisiert um 17:55 Uhr
Hallo passa,

01.
@echo off & setlocal ENABLEDELAYEDEXPANSION 
02.
set rootFolder=C:\DeinOrdner\ 
03.
for /f "tokens=*" %%i IN ('dir /s /b /A-D "%rootFolder%*.raw"') DO @( 
04.
	set file=%%i 
05.
	set jpgfile=!file:~0,-3!jpg 
06.
	if not exist "!jpgfile!" ( 
07.
	    set jpgfile=!file:~0,-3!jpeg 
08.
            if not exist "!jpgfile!" ( 
09.
               del "!file!" /q 
10.
11.
12.
)
Grüße Uwe
Bitte warten ..
Mitglied: passa123
25.04.2013 um 17:36 Uhr
@Endoro: Danke. Ich habe in diesem Forum und auch über Google intensive Nachforschungen angestellt und leider nichts gefunden. Dein Code funktioniert bei mir leider nicht.

@colinardo: Vielen Dank Uwe. Ich habe dein Code ausführlich getestet und einmal hat es geklappt. Dann sind mir plötzlich alle raw Dateien gelöscht worden und dann wieder keine. Keine Ahnung warum ich nicht immer das gleiche Resultat erhalte. Ich werde es nochmals ein wenig testen.
Bitte warten ..
Mitglied: Endoro
25.04.2013 um 17:45 Uhr
Zitat von passa123:
Dein Code funktioniert bei mir leider nicht.


... und warum nicht? Gab's eine Fehlermeldung? Ein unerwartetes Resulat? Hier geht's nämlich.

Gruss!
Bitte warten ..
Mitglied: colinardo
25.04.2013, aktualisiert um 17:57 Uhr
Zitat von passa123:
@colinardo: Vielen Dank Uwe. Ich habe dein Code ausführlich getestet und einmal hat es geklappt. Dann sind mir plötzlich
alle raw Dateien gelöscht worden und dann wieder keine. Keine Ahnung warum ich nicht immer das gleiche Resultat erhalte. Ich
werde es nochmals ein wenig testen.

vielleicht haben deine JPG's andere Endungen als in meinem Script (jpg,jpeg).
--edit: Hab das Script dazu noch oben ergänzt, jetzt können die Endungen "jpg" oder "jpeg" heißen.
Bitte warten ..
Mitglied: bastla
25.04.2013, aktualisiert um 19:56 Uhr
@ Endoro
Vielleicht mit einem "not"?

Grüße
bastla
Bitte warten ..
Mitglied: Endoro
25.04.2013 um 20:19 Uhr
@ bastla

ich hab's mir schon gedacht: ich hab die Aufgabe nicht gepeilt. Wer darf bleiben- wer muss gehn


Gruss!
Bitte warten ..
Mitglied: passa123
28.04.2013 um 17:05 Uhr

... und warum nicht? Gab's eine Fehlermeldung? Ein unerwartetes Resulat? Hier geht's nämlich.

Gruss!

...keine Ahnung. Es geschieht nichts. Keine Fehlermeldung, kein Resultat.
Bitte warten ..
Mitglied: passa123
28.04.2013 um 17:25 Uhr
Zitat von colinardo:
vielleicht haben deine JPG's andere Endungen als in meinem Script (jpg,jpeg).
--edit: Hab das Script dazu noch oben ergänzt, jetzt können die Endungen "jpg" oder "jpeg"
heißen.

Super, Danke! Obwohl meine Dateien die Endungen .jpg haben ist es am Donnerstag nicht gegangen und jetzt geht es problemlos. Ich habe das Skript nun noch um eine Benutzereingabe erweitert.
01.
@echo off & setlocal ENABLEDELAYEDEXPANSION 
02.
echo Programm zum loeschen der unnoetigen RAW-Dateien. 
03.
set /P rootFolder=Bitte geben Sie den Pfad an: 
04.
for /f "tokens=*" %%i IN ('dir /s /b /A-D "%rootFolder%*.raw"') DO @( 
05.
	set file=%%i 
06.
	set jpgfile=!file:~0,-3!jpg 
07.
	if not exist "!jpgfile!" ( 
08.
	    set jpgfile=!file:~0,-3!jpeg 
09.
            if not exist "!jpgfile!" ( 
10.
               del "!file!" /q 
11.
12.
13.
)
Gibt es noch eine Möglichkeit, abschliessend noch eine Zusammenfassung anzeigen zu lassen? Ich denke da an: "Es wurden ... Dateien gelöscht."
Bitte warten ..
Mitglied: bastla
28.04.2013, aktualisiert um 17:48 Uhr
Hallo passa123!

Zusammen mit einer etwas eleganteren (siehe oben bei Endoro) Handhabung des "Typ"-Problems etwa so:
01.
@echo off & setlocal 
02.
echo Programm zum loeschen der unnoetigen RAW-Dateien. 
03.
set /P rootFolder=Bitte geben Sie den Pfad (mit \ am Ende)an: 
04.
set Anzahl=0 
05.
for /f "tokens=*" %%i IN ('dir /s /b /A-D "%rootFolder%*.raw"') DO ( 
06.
    if not exist "%%~dpni.jpg" if not exist "%%~dpni.jpeg" ( 
07.
        del /q "%%i" 
08.
        set /a Anzahl+=1 
09.
10.
11.
echo Es wurden %Anzahl% Dateien gelöscht.
Grüße
bastla
Bitte warten ..
Mitglied: passa123
28.04.2013 um 20:13 Uhr
Danke bastla, jetzt habe ich mein finales Skript. Ich habe noch eine Pause an den Schluss gestellt (sonst sieht man das Resultat nicht).
Das Problem ist gelöst. Danke an alle Beteiligten.
01.
@echo off & setlocal 
02.
echo Programm zum loeschen der unnoetigen RAW-Dateien. 
03.
set /P rootFolder=Bitte geben Sie den Pfad (mit \ am Ende)an: 
04.
set Anzahl=0 
05.
for /f "tokens=*" %%i IN ('dir /s /b /A-D "%rootFolder%*.raw"') DO ( 
06.
    if not exist "%%~dpni.jpg" if not exist "%%~dpni.jpeg" ( 
07.
        del /q "%%i" 
08.
        set /a Anzahl+=1 
09.
10.
11.
echo Es wurden %Anzahl% Dateien geloescht. 
12.
pause
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
Excel - Spalte löschen, wenn die Bedingung erfüllt ist
gelöst Frage von wingetMicrosoft Office4 Kommentare

Hallo zusammen, wer kann mir mit einem Makro für folgendes Problem helfen. 1.Beliebige Zeilen 2.Beliebige Spalten 3.Mehrere sheets (Blätter) ...

Batch & Shell
Wert in Datei Suchen und if else Bedingung
Frage von trallerBatch & Shell4 Kommentare

Hallo, ich möchte ein kleines Bash-Script erstellen, welches prüft, ob ein bestimmter Text, welcher die Variable $suchtext ist, in ...

Batch & Shell
Löschen von Dateien und gewisse Dateien ausschließen
gelöst Frage von tommhiiBatch & Shell4 Kommentare

Hallo, ich kopiere mittels batch Dateien von einen Ordner ( Eingang) in einen anderen Ordner (Ausgang) dabei schließe ich ...

Windows Server
Windows Benutzer können keine Dateien löschen
gelöst Frage von SebastianProWindows Server4 Kommentare

Hallo, wir haben einen Windows SBS Server 2011 und einen Windows Server 2008 R2 Enterprise im Einsatz. (Beide mit ...

Neue Wissensbeiträge
Verschlüsselung & Zertifikate

Die Hölle friert ein weiteres Stück zu: Microsoft integriert OpenSSH in Windows

Information von ticuta1 vor 32 MinutenVerschlüsselung & Zertifikate

Interessant SSH-Kommando in CMD.exe und PowerShell

Apple

IOS 11.2.1 stopft HomeKit-Remote-Lücke

Tipp von BassFishFox vor 1 TagApple

Das Update für iPhone, iPad und Apple TV soll die Fernsteuerung von Smart-Home-Geräten wieder in vollem Umfang ermöglichen. Apple ...

Windows 10

Windows 10 v1709 EN murkst bei den Regionseinstellungen

Tipp von DerWoWusste vor 1 TagWindows 10

Dieser kurze Tipp richtet sich an den kleinen Personenkreis, der Win10 v1709 EN-US frisch installiert und dabei die englische ...

Webbrowser

Kein Ton bei Firefox Quantum über RDP

Tipp von Moddry vor 1 TagWebbrowser

Hallo Kollegen! Hatte das Problem, dass der neue Firefox bei mir auf der Kiste keinen Ton hat, wenn ich ...

Heiß diskutierte Inhalte
Windows Server
RODC kann nicht aus Domäne entfernt werden
Frage von NilsvLehnWindows Server18 Kommentare

HAllo, ich arbeite in einem Universitätsnetzwerk mit 3 Standorten. Die Standorte haben alle ein ESXi Cluster und auf diesen ...

Hardware
Kein Bild mit nur einer bestimmten Grafikkarten - Mainboard Konfiguration
gelöst Frage von bestelittHardware18 Kommentare

Hallo zusammen, ich hatte schon einmal eine ähnliche Frage gestellt. Damals hatte ich genau das gleiche Problem. Allerdings lies ...

Netzwerkmanagement
Mehrere Netzwerkadapter in einem PC zu einem Switch zusammenfügen
Frage von prodriveNetzwerkmanagement17 Kommentare

Hallo zusammen Vorweg, ich konnte schon einige IT-Probleme mit Hilfe dieses Forums lösen. Wirklich klasse hier! Doch für das ...

Hardware
Links klick bei Maus funktioniert nicht
gelöst Frage von Pablu23Hardware16 Kommentare

Hallo erstmal. Ich habe ein Problem mit meiner relativ alten maus jedoch denke ich nicht das es an der ...