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

Doppelte Dateien mittels Batch entfernen

Frage Entwicklung Batch & Shell

Mitglied: dervik

dervik (Level 1) - Jetzt verbinden

04.06.2013 um 12:04 Uhr, 2660 Aufrufe, 10 Kommentare, 4 Danke

Hallo,

folgende Problematik;

Ich habe mittels des OFC-Tools *.doc, *.ppt und *.xls Dokumente in die Formate *.docx, *.pptx und *.xlsx konvertiert. Die konvertierten Dateien befinden sich jeweils im gleichen Verzeichnis wie die alten.

Nun soll in einem automatisierten Schritt die *.doc, *.ppt und *.xls Dateien (sofern jeweils eine *.docx, *.pptx und *.xlsx mit gleichen Namen befindet) idealer Weise verschoben werden. Sofern eine Realisierung mittels Löschung sich einfacher gestalten lässt wäre dies auch in Ordnung.

Wichtig ist, dass eine Prüfung erfolgt ob sich auch wirklich eine konvertierte Datei existiert (Das OFC-Tool konvertiert z.B. keine Kennwort geschützten Dateien) und eine Löschung von nicht konvertierten Dateien muss ausgeschlossen werden.

Vielen Dank für konstruktive Vorschläge
Mitglied: Endoro
04.06.2013, aktualisiert um 12:50 Uhr
Hallo dervik,

das von dir beschriebene Problem ist derart häufig, dass du mit Suchfunktion und -maschine garantiert was passendes findest.


Gruss!
Bitte warten ..
Mitglied: dervik
04.06.2013 um 12:59 Uhr
Hallo,

für Teilproblematiken stimme ich Dir zu, jedoch habe ich nichts gefunden was in Summe mein Problem löst.

MfG
Bitte warten ..
Mitglied: Endoro
04.06.2013 um 13:19 Uhr
Vielleicht kannst du ja deine Teilergebnisse mal zeigen.
Oder suchst du einen Programmierservice?

Gruss!
Bitte warten ..
Mitglied: dervik
04.06.2013 um 13:30 Uhr
ich suche keinen Service. Ich habe mich an folgendem orientiert: (jedoch fehlt mir irgendwie noch "etwas"):

for /r C:\Pfad %i in (*.doc) do @if /i "%~x"==".doc" @echo DEL "%i"
Bitte warten ..
Mitglied: Biber
04.06.2013, aktualisiert um 14:07 Uhr
Moin dervik,

willkommen im Forum.

Du hast doch oben als Prosatext genau beschrieben, was passieren soll.

Dann mach do eine schrittweise Übersetzung (ganz stumpf, so wie die RedmonderInnen die M$KB-Artikel übersetzen).

Zitat von dervik:
Nun soll in einem automatisierten Schritt die *.doc, *.ppt und *.xls Dateien
-> for /R "d:\einVerzeichnis" %i in (*.xls) do... oder entsprechend *.ppt, *.xls)...
--> Sonderlocke: bei Abfrage nach Extension *.xls wird auch *.xlsx (bzw. alles mit *xls* ) geliefert.
.... if /i [%~xi] EQU [.xls]....
(sofern jeweils eine *.docx, *.pptx und *.xlsx mit gleichen Namen befindet)
-> .... if exist "%ix" ...
... if exist idealer Weise verschoben werden.
... Löschung ... wäre ... auch in Ordnung.
-> ... Move "%i" "i:\Archiv\"
-> oder ... DEL "%i"

Für alle .ppt.x dann
for /R "d:\einVerzeichnis" %i in (*.ppt) do if /i [%~xi] EQU [.ppt] if exist "%ix" Move "%i" "i:\Archiv\"
Du kannst natürlich auch die (*.ppt, *.doc, *, xls) -extensions in einer FOR-Anweisung zusammenfassen; der DIR Befehl kann ohnehin ein "DIR *.doc *.xls *.ppt)".

Grüße
Biber
Bitte warten ..
Mitglied: Endoro
04.06.2013, aktualisiert um 14:08 Uhr
Also, ist doch ganz OK, nichts was du verstecken müsstest.

Vorschlag:
01.
@echo off &setlocal 
02.
set "startfolder=." 
03.
for /r "%startfolder%" %%i in (*.doc,*.ppt,*.xls) do if exist "%%~fix" echo move "%%~fi" "X:\Backup Folder"
Es wird ausgehend von %startfolder% der Verzeichnisbaum rekursiv durchsucht.
Wenn eine Datei *.docx,*.pptx,*.xlsx existiert, wird die entsprechende *.doc,*.ppt,*.xls verschoben.
Wenn es passt, entferne das Wort echo vor move.

Gruss!

PS: siehe @Biber: wenn eine *.*x existiert, wird die verschoben falls es noch eine *.*xx gibt.
Bitte warten ..
Mitglied: dervik
04.06.2013 um 14:10 Uhr
Ah, nun hab ichs! Vielen Dank!
Bitte warten ..
Mitglied: Endoro
04.06.2013 um 14:24 Uhr
Um den Rest vom Restrisiko auzuschalten, kann noch eine Sicherheits-Forschleife eingebaut werden:
01.
@echo off &setlocal 
02.
set "startfolder=."  
03.
for %%a in (.doc,.ppt,.xls) do for /r %%i in (*%%a) do if "%%~xi"=="%%a" if exist "%%~fix" echo move "%%~fi" "X:\Backup Folder"


Gruss!
Bitte warten ..
Mitglied: dervik
04.06.2013 um 14:35 Uhr
Du schreibst (...)"%%~fix" echo move "%%~fi"(...) wieso einmal "%%~fix" und dann "%%~fi" ?

Zitat von Endoro:
Also, ist doch ganz OK, nichts was du verstecken müsstest.

Vorschlag:
01.
> @echo off &setlocal 
02.
> set "startfolder=." 
03.
> for /r "%startfolder%" %%i in (*.doc,*.ppt,*.xls) do if exist "%%~fix" echo move "%%~fi" 
04.
> "X:\Backup Folder" 
05.
> 
Es wird ausgehend von %startfolder% der Verzeichnisbaum rekursiv durchsucht.
Wenn eine Datei *.docx,*.pptx,*.xlsx existiert, wird die entsprechende *.doc,*.ppt,*.xls verschoben.
Wenn es passt, entferne das Wort echo vor move.

Gruss!

PS: siehe @Biber: wenn eine *.*x existiert, wird die verschoben falls es noch eine *.*xx gibt.
Bitte warten ..
Mitglied: Endoro
04.06.2013 um 14:51 Uhr
Zitat von dervik:
Du schreibst (...)"%%~fix" echo move "%%~fi"(...) wieso einmal "%%~fix" und dann "%%~fi"
?


Wenn die Datei mit dem x existiert, kann die ohne x verschoben werden.

%%~fix == mit x
%%~fi == ohne x

Gruss!
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Doppelte Einträge mit Batch entfernen
gelöst Frage von Kugelschreiber15Batch & Shell8 Kommentare

Hallo Leute, bin grad dabei ein kleines Tool zu basteln und habe nun eine Frage! Ich suche mit Hilfe ...

Batch & Shell
Doppelte Dateneinträge per Batch aus Datei löschen? HILFE
gelöst Frage von freshman2017Batch & Shell7 Kommentare

Liebe Gemeinde, Ihr konntet mir als Anfänger sehr gut helfen. Ich brauche jetzt aber noch Hilfe bei der doppelte ...

Batch & Shell
Batch- Dateien mit doppeltem String Charater verschieben
gelöst Frage von christianV6Batch & Shell7 Kommentare

Hallo zusammen, ich bitte um eure Hilfe, benötigt wird ein Batch-Tool mit dem man Dateien verschiebt. Und zwar liegen ...

Batch & Shell
Doppelte Bedingungen für eine Update Batch
gelöst Frage von zeroblue2005Batch & Shell2 Kommentare

Hallo Zusammen, jetzt bastel ich schon schon ein paar Tage an einer Update Batch und Sie läuft auch wunderbar. ...

Neue Wissensbeiträge
Linux

Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde

Information von Frank vor 5 StundenLinux12 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 1 TagBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 1 TagHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

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

Anleitung von colinardo vor 2 TagenMikroTik RouterOS8 Kommentare

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

Heiß diskutierte Inhalte
Router & Routing
Zwei Netzwerke erstellen
Frage von bunteblumeRouter & Routing14 Kommentare

Hallo Zusammen, Ich möchte gerne ein backup von einem bestimmten Folder welcher auf dem Server regelmässig synchronisiert wird auf ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Linux
Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde
Information von FrankLinux12 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Windows 10
Alle Programme mit bestimmtem Namen automatisch (per GPO) deinstallieren
gelöst Frage von lordofremixesWindows 1012 Kommentare

Hallo zusammen, gibt es eine Möglichkeit, alle Programme beginnend mit z.B. "Dell" im Namen per Script und somit per ...