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

Automatisches Löschen von Dateien nach Abgleich mit Inhalt von Zip Dateien

Frage Entwicklung Batch & Shell

Mitglied: cbli

cbli (Level 1) - Jetzt verbinden

29.11.2006, aktualisiert 01.12.2006, 4857 Aufrufe, 4 Kommentare

Ersteinmal sorry ,daß ich hierfür einen neuen Thread aufmache,aber der alte ist geschlossen.
Es geht um


http://www.administrator.de/Automatisches_Verschieben_von_Dateiinhalten ...

Im speziellen um diese Zeile

for /f "tokens=3" %%k in ('7za l -slt "D:\temp\lager\*.zip" ^| findstr /C:"Path = "') do if exist "C:\Programme\verarbeitet\%%k" del /q "C:\Programme\verarbeitet\%%k"

Hier wird nach dem Abgleich der Inhalte der Zip Dateien in D:\temp\lager\*.zip mit Dateien im
Verzeichnis C:\Programme\verarbeitet alle Übereinstimmungen in C:\Programme\verarbeitet gelöscht.

Hat auch wunderbar funktioniert,nur habe ich vorhin die Batch , nachdem der Thread geschlossen wurde, mit neuen Zip Dateien ausgeführt.
Bei diesen Zips waren nun Dateien dabei ,die ein Leerzeichen im Namen haben (hatte dies leider vergessen zu testen).
Diese werden nun leider nicht gelöscht. Wie ändere ich obige Zeile damit auch wirklich komplett alles gelöscht wird.
Dieser Thread könnte dann später entweder gelöscht oder wenn möglich in den Ursprungsthread verschoben werden.

Danke nochmals und sorry

Gruß
Claus
Mitglied: Biber
29.11.2006 um 13:26 Uhr
Moin cbli,

Für diesen Fall so erweitern:
01.
... 
02.
for /f "tokens=3*" %%k in ('7za l -slt "D:\temp\lager\*.zip" ^| findstr /C:"Path = "') do ( 
03.
 if [%%l]==[] ( 
04.
   if exist "C:\Programme\verarbeitet\%%k" del /q "C:\Programme\verarbeitet\%%k" 
05.
  ) ELSE ( 
06.
   if exist "C:\Programme\verarbeitet\%%k %%l" del /q "C:\Programme\verarbeitet\%%k %%l" 
07.
)
[Die neue Zählvariable ist ein kleines "L", d.h. die auf ""K" folgende.]
Ginge auch kürzer, aber so ist es lesbarer.

Grüße
Biber
Bitte warten ..
Mitglied: cbli
29.11.2006 um 14:17 Uhr
Moin cbli,

Für diesen Fall so erweitern:
01.
... 
02.
> for /f "tokens=3*" %%k in ('7za l 
03.
> -slt "D:\temp\lager\*.zip" ^| 
04.
> findstr /C:"Path = "') do ( 
05.
>  if [%%l]==[] ( 
06.
>    if exist 
07.
> "C:\Programme\verarbeitet\%%k" del 
08.
> /q "C:\Programme\verarbeitet\%%k" 
09.
>   ) ELSE ( 
10.
>    if exist 
11.
> "C:\Programme\verarbeitet\%%k %%l" 
12.
> del /q "C:\Programme\verarbeitet\%%k 
13.
> %%l" 
14.
> ) 
15.
> 
[Die neue Zählvariable ist ein kleines
"L", d.h. die auf
""K" folgende.]
Ginge auch kürzer, aber so ist es
lesbarer.

Nachdem ich noch ein ) am Ende eingefügt hatte, gings wunderbar.
Funktioniert jetzt mit allen Dateien egal ob mit oder ohne Leerzeichen im Dateinamen.
Habs auch gleich mit Sonderzeichen getestet und geht auch.
Trotzdem sind noch 2 Fragen (glaube du würdest dich auch wundern wenn ich nicht nachhaken würde ) enstanden:

1. Wie sieht die kürzere Version aus ?

2. Wie sähe der Code aus wenn keine Übereinstimmungen da sind (also nix gelöscht werden kann) und ich auf das hin überprüfen will
Ist nicht so wichtig,nur der Schönheit wegen und vielleicht für ein späteres Projekt.

Habs mal so versucht ging aber nicht

for /f "tokens=3" %%k in ('7za l -slt "D:\temp\lager\*.zip" ^| findstr /C:"Path = "') do if not exist "C:\programme\verarbeitet\%%k" goto schongelöscht

Danke dir

Gruß
Claus

PS: Wie lange befasst du dich schon so intensiv mit Batch Dateien ?
Bitte warten ..
Mitglied: Biber
29.11.2006 um 18:22 Uhr
Moin cbli,

ad 1.
Die kürzere Version -not recommended wäre schlicht und einfach der Verzicht auf jegliche Fallunterscheidung
01.
for /f "tokens=3*" %%k in ('7za l -slt "D:\temp\lager\*.zip" ^| findstr /C:"Path = "') do (  
02.
if exist "C:\Programme\verarbeitet\%%k %l" del /q "C:\Programme\verarbeitet\%%k %l" 
03.
)
Das würde zwar beim Auflösen der %%k und %%l-Variablen zu..
01.
...if exist "C:\Programme\verarbeitet\irgendeineDatei.xyz " del /y "C:\Programme\verarbeitet\irgendeineDatei.xyz " 
02.
...if exist "C:\Programme\verarbeitet\irgendeine andere Datei.xyz" del /y "C:\Programme\verarbeitet\irgendeine andere Datei.xyz" 
03.
...
..führen, also an EXIST und DEL jeweils bei Dateinamen ohne Leerzeichen im Namen
eine in Anführungszeichen eingeschlossene Zeichenkette mit einem SPACE am Ende übergeben.

Beide Befehle kommen damit klar...es wird alles gemacht wie erhofft.
Aber es ist halt kein gesichertes Feature des sympathischen Weltmarktführers, auf das ich vertrauen würde.
Eigentlich trau ich dem eh' nich' *murmel
Ob ein Befehl
01.
del "test.txt "
immer funktioniert...? Und ob in VBScript auch ein oFS.Delete("test.txt ") genauso klappt....?
Da riskier ich nichts und nehme lieber eine Zeile Batch mehr in Kauf.

ad 2.
Hm..keine Übereinstimmungen...okay. Aber daraus abzuleiten, dass die Datei schon gelöscht ist...mutig.

Ich würde in diesem ELSE-Fall nicht mit GOTO irgendwohin springen, sondern diesen Dateinamen in eine Logdatei schreiben.
Und diese Logdatei ggf. danach anzeigen, abarbeiten, whatever.
01.
... 
02.
for /f "tokens=3*" %%k in ('7za l -slt "D:\temp\lager\*.zip" ^| findstr /C:"Path = "') do ( 
03.
 if exist "C:\Programme\verarbeitet\%%k %l" (  
04.
       del /q "C:\Programme\verarbeitet\%%k %l" 
05.
       ) ELSE ( 
06.
       Echo %date% "C:\Programme\verarbeitet\%%k %l" existiert nicht. Evtl. gelöscht?>>irgendein.log 
07.
)) 
08.
...
ad P.S. Habe damit angefangen, nachdem ich mich im Forum registriert habe.

Grüße
Biber
Bitte warten ..
Mitglied: cbli
01.12.2006 um 13:01 Uhr
Dieser Thread kann geschlossen werden.

Danke nochmals für deine Hilfe.


Gruß
Claus
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Alle Dateien außer zip löschen
gelöst Frage von chb1982Batch & Shell4 Kommentare

Hallo zusammen, hat jemand eine Idee wie ich es schaffe alle Dateien, außer die eines bestimmten Dateityps in einem ...

Windows Server
PowerShell Inhalt einer csv Datei löschen
gelöst Frage von makaroniWindows Server4 Kommentare

Hallo zusammen, ich möchter gerne automatisiert über einen Task alle 10 Min eine CSV Datei via Powershell einlesen und ...

Windows Server
Laborumgebung mit Produktivumgebung automatisch abgleichen?
Frage von samu.98Windows Server5 Kommentare

Servus zusammen Ich befinde mich momentan in der Ideenfindung zum Abschlussprojekt für meine Ausbildung als Informatiker. Meine Projektidee ist ...

Windows Server
Entpackte ZIP Files neben ZIP finden und löschen
gelöst Frage von madhiasWindows Server2 Kommentare

Hallo, Ich suche auf unserem Fileserver entpackte ZIP Files, wo die ursprüngliche ZIP Datei noch vorhanden ist. Die entpackten ...

Neue Wissensbeiträge
Datenschutz

Weitere Inforamtionen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 5 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 7 StundenWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Microsoft Office

Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei

Anleitung von SarekHL vor 10 StundenMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Erkennung und -Abwehr

Sicherheitslücke Spectre und Meltdown: Status prüfen

Anleitung von Frank vor 16 StundenErkennung und -Abwehr2 Kommentare

Nach all den Updates der letzten Woche sollte man unbedingt auch den Status prüfen, ob die Sicherheitslücken Spectre, Meltdown ...

Heiß diskutierte Inhalte
Netzwerke
NTFS-Berechtigung
Frage von Daoudi1973Netzwerke23 Kommentare

Hallo zusammen und frohes neues Jahr (Sorry, ich bin spät dran) Meine Frage: 1- Ich habe einen Ordner im ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1017 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...