Jump to content

imebro

Members
  • Gesamte Inhalte

    40
  • Registriert seit

  • Letzter Besuch

Alle erstellten Inhalte von imebro

  1. Danke Dir... Es dauert überhaupt nicht lange, das auszuprobieren. Habe es längst getan, aber es funktioniert nicht, wenn ich die Optionen als Variable angebe. Gibt´s vielleicht nen Tipp hierzu? Grüße, imebro
  2. Aber 2 interessante Fragen hätte ich noch: 1) Im Internet steht in vielen Berichten, dass man bei den Variablen neben "set" keine Anführungsstriche im Pfad angeben soll. Diese soll man dann erst im eigentlichen Robocopy-Befehl angeben (z.B. --> "%Quelle%". Ich habe es jedoch so umgesetzt, dass ich oben bei "set" die Anführungsstriche gesetzt habe und unten im eigentlichen Befehlscode nicht ( also --> %Quelle%). Offenbar funktioniert Beides. Gibt es dennoch einen Unterschied oder ist es wirklich egal, wie man es macht? 2) Kann ich die Optionen auch als Variable mit "set" angeben? Z.B. so --> Set Optionen="/E /MOVE /COPY:DAT /DCOPY:T /XD /MT:12 /R:1 /W:1 /TEE" Dann ist der eigentliche Befehlscode später übersichtlicher... Grüße, imebro
  3. Sorry, aber doch, ich habe das Konzept verstanden Habe das Problem nämlich schon gelöst. Ich habe ein Powershell-Script erstellt, mit dem ich die 3 Daten (Eigenschaften) ändern kann. Damit habe ich einer Datei folgende Daten gegeben: - Erstellt: 1. Mai 2010 - Geändert: 5. Januar 2012 - Letzter Zugriff: 14. August 2018 Normalerweise würde diese Datei gelöscht, da vor dem 1.01.2012 erstellt. Aber da sie am 5.1.2012 verändert wurde, dürfte sie NICHT gelöscht werden, da Stichtag ja der 1.01.2012 ist. Dann habe ich mein Robocopy-Script nochmal durchlaufen lassen... und siehe da... die Datei wurde korrekter Weise NICHT gelöscht Also dürfte mein Script jetzt korrekt sein mit "/minage" und den anderen Einstellungen. Grüße, imebro
  4. Also... scheint, als ob es funktioniert hat. Jedenfalls wurden Dateien tatsächlich verschoben und das Verzeichnis, welches nicht angerührt werden sollte, ist auch unverändert. Nur... so ganz sicher bin ich mir dennoch nicht, ob jetzt wirklich nur die Dateien verschoben wurde, die vor dem 1.01.2012 tatsächlich VERÄNDERT worden sind und nicht auch solche, die vor diesem Datum ERSTELLT wurden. Vielleicht kann ich das ja über die Datei-Eigenschaften herausfinden... nur ist das ja ein Lotteriespiel, da ich ja nicht weiß, welche Dateien ich anschauen soll Ich müßte im Idealfall dann eine Datei finden, die z.B. am 10.05.2010 erstellt und am 2.01.2012 geändert wurde. Wenn diese dann NICHT verschoben wurde, läuft alles richtig (da ja nach dem 1.01.2012 geändert). Dazu müßte ich jedoch sämtliche Dateien über die Eigenschaften prüfen, was kaum möglich ist. Grüße, imebro
  5. Habe es mit "/minage" versucht und es hat sich was getan. Muss jetzt nur noch kontrollieren, ob auch das Richtige getan wurde Grüße, imebro
  6. Oh man, ich komme mir hier vor, wie in der Schule Wenn ich das wüßte, würde ich ja nicht fragen... Ich habe schon seit gestern alle möglichen Optionen über Robocopy im Web gesucht und eben nicht das gefunden, was mir hier weiterhilft. Z.B. gibt es noch die Optionen "/minage" und "maxage". Aber die können ja nicht die Lösung sein, da hierbei das minimale, bzw. maximale Dateialter angegeben wird - also um Dateien auszuschließen, die älter, bzw. neuer als n Tage oder Datum sind. Älter als bezieht sich doch sicher auf das Erstellungsdatum der Datei... oder etwa nicht? Also bleibt im Grunde nur "/minlad" od. "maxlad". Aber wenn - wie Du geschrieben hast - das auch nicht die richtige Option ist, dann weiß ich es auch nicht. Eine weitere passende Option habe ich bisher nicht gefunden. Die Optionen "/COPY:DAT" sowie "/DCOPY:T" habe ich ja bereits in meinem Code eingesetzt. Grüße, imebro
  7. Wenn Du wüßtest, wie lange ich schon dabei bin, meine Lieblingssuchmaschine zu bemühen. Ich denke, dass die Datei jetzt grds. funktioniert. Ich musste nur bei der Angabe der Dateien noch etwas Weiteres verändern. Nämlich: Set Dateien="*.bak*" "*.doc*" "*.dot*" "*.wbk*" "*.xls*" Jede einzelne Angabe muss wohl in Anführungsstriche gesetzt werden. Übrigens habe ich das herausgefunden, indem ich den Auftrag mit YARCGUI erstellt habe. Wie Du siehst, habe ich auch das bereits versucht. Das Ergebnis der LOG-Datei zeigt aber, dass es noch nicht funktioniert. Es wurde auch wieder lediglich ein einziges leeres Verzeichnis nach "Test3" kopiert. Hier mal die LOG: ------------------------------------------------------------------------------- ROBOCOPY :: Robustes Dateikopieren für Windows ------------------------------------------------------------------------------- Gestartet: Mittwoch, 16. Februar 2022 12:14:04 Quelle : \\dasfile2\daten\Test\ Ziel : \\dasfile2\daten\Test3\ Dateien : *.bak* *.doc* *.dot* *.wbk* *.xls* Ausgeschl. Verzeichnisse: \\dasfile2\daten\Test\U1\UU1 Optionen: /TEE /S /E /DCOPY:T /COPY:DAT /MOVE /MINLAD:20120101 /R:1 /W:1 ------------------------------------------------------------------------------ 46 \\dasfile2\daten\Test\ Neues Verz. 3 \\dasfile2\daten\Test\U1\ ------------------------------------------------------------------------------ Insgesamt KopiertÜbersprungenKeine Übereinstimmung FEHLER Extras Verzeich.: 3 1 2 0 0 0 Dateien: 49 0 49 0 0 0 Bytes: 5.53 m 0 5.53 m 0 0 0 Zeiten: 0:00:00 0:00:00 0:00:00 0:00:00 Beendet: Mittwoch, 16. Februar 2022 12:14:04 Wie man sieht, wurde nichts kopiert. Ich bin sicher, dass es irgendwie mit dieser "/minlad" Angabe zu tun hat. Aber was / wie / wo soll ich da herum probieren? In den Datei-Eigenschaften steht lediglich bei "Geändert:" das Datum, welches ich ansprechen möchte. Dort steht z.B. "7. August 2003". Bei "Erstellt:" und bei "Letzter Zugriff:" steht jeweils der 7. Februar 2022. Dieses Datum darf natürlich im Code NICHT abgefragt werden. Was kann ich denn anders eintragen, um zu erreichen, dass ich im Code das ÄNDERUNGSDATUM anspreche, damit alle Dateien, die vor dem 1.01.2012 nicht mehr verändert wurden, verschoben werden? Grüße, imebro
  8. OK und danke für die Hinweise. Habe die Kommata jetzt entfernt. Was muss ich denn - statt "/minlad" angeben, damit der Zeitpunkt der letzten Änderung berücksichtigt wird? Grüße, imebro
  9. Hallo nochmal, so - endlich habe ich mal Zeit, um die Datei wirklich zu testen. Es sollen ja alle Excel-/Word Dokumente verschoben werden, die vor dem 1.01.2012 nicht mehr verändert wurden. Dazu habe ich eine Testumgebung erstellt mit den Verzeichnissen "Test\U1\UU1" und "Test3" Dann habe ich verschiedene Word- u. Excel-Dokumente in die Verzeichnisse kopiert, wobei manche älter sind als 1.01.2012 und manche neuer. Nach Ausführen der Batchdatei befand sich im Verzeichnis "Test3" jedoch lediglich das Verzeichnis "U1", welches jedoch vollkommen leer ist. Wieso wurden keine Dateien in die Verzeichnisse verschoben? Hier mal der aktuelle Code, mit dem ich es eben versucht hatte: Set Quelle="\\dasfile2\daten\Test" Set Ziel="\\dasfile2\daten\Test3" Set Dateien="*.xls*, *.doc*, *.wbk*, *.bak*, *.dot*" Set Ausschluss="\\dasfile2\daten\Test\U1\UU1" Set Log="\\dasfile2\daten\Test3\LOG.txt" robocopy.exe %Quelle% %Ziel% %Dateien% /E /MOVE /XD %Ausschluss% /minlad:20120101 /R:1 /W:1 /TEE /LOG+:%Log% Dem Code nach hätten eine Menge Dateien ins Verzeichnis "Test3" verschoben werden müssen. Das Unterverzeichnis "Test1\U1\UU1" hätte so erhalten bleiben müssen, wie es war (siehe "Ausschluss"). Wo liegt mein Fehler? Danke und schöne Grüße, imebro
  10. Hallo nochmal, ich möchte Euch jetzt wenigstens auch mal mein Ergebnis zeigen, welches als Testlauf (/L) mit Robocopy schon gut funktioniert hat. Die zu löschenden Dateien werden mit Robocopy nicht gelöscht, sondern zunächst einfach mal in ein anderes Verzeichnis verschoben. Dieses kann dann nochmal durchgeschaut werden... und anschließend kann das komplette Verzeichnis gelöscht werden und im orig. Verzeichnis verbleiben nur die Dateien, die dort auch gewünscht sind. Über "minlad:20150101" (Minimales Datum des letztes Zugriffs) werden Dateien ausgeschlossen, die seit dem 1.01.2015 verwendet wurden. Da war ich mir noch nicht so recht sicher, ob das für mein Vorhaben so korrekt ist. Es sollte ursprünglich ja so sein, dass alle Dateien, die zum letzten Mal vor dem Datum verwendet/verändert wurden, gelöscht werden sollen. Das muss man halt auf "minlad" umbrechen... Vielleicht könnt Ihr ja da nochmal helfen. Hier mein Code: @ echo off Set Quelle="\\dasfile2\daten\Test" Set Ziel="\\dasfile2\daten\Test3" Set Dateien="*.xls*, *.doc*, *.wbk*, *.bak*, *.dot*" Set Ausschluss="\\dasfile2\daten\Test\U1\UU1" Set Log="\\dasfile2\daten\Test3\LOG.txt" mkdir \\dasfile2\daten\Test3 robocopy.exe %Quelle% %Ziel% %Dateien% /E /MOVE /XD %Ausschluss% /minlad:20150101 /L /R:1 /W:1 /LOG+:%Log% Falls Ihr noch Verbesserungsvorschläge habt - gerne! Ansonsten werde ich den Zusatz "/L" entfernen und das Script mal durchlaufen lassen (sind ja zunächst eh mal nur Testverzeichnisse). Grüße, imebro
  11. OK... Habe es jetzt mal mit Robocopy versucht, womit ich mich etwas besser auskenne, indem ich zunächst die gefundenen Dateien in ein anderes Verzeichnis verschiebe und dieses im Anschluss lösche (mit einer weiteren Batch). Hier mal der Code, der die Dateien verschieben soll: mkdir S:\Test3 robocopy.exe S:\Test\*.xls* S:\Test3 /E /MOVE /maxlad:20210101 /R:1 /W:1 /LOG+:S\Test3\LOG.txt robocopy.exe S:\Test\*.doc* S:\Test3 /E /MOVE /maxlad:20210101 /R:1 /W:1 /LOG+:S\Test3\LOG.txt robocopy.exe S:\Test\*.wbk* S:\Test3 /E /MOVE /maxlad:20210101 /R:1 /W:1 /LOG+:S\Test3\LOG.txt robocopy.exe S:\Test\*.bak* S:\Test3 /E /MOVE /maxlad:20210101 /R:1 /W:1 /LOG+:S\Test3\LOG.txt robocopy.exe S:\Test\*.dot* S:\Test3 /E /MOVE /maxlad:20210101 /R:1 /W:1 /LOG+:S\Test3\LOG.txt Leider tut sich auch hier nichts. Eigentlich meint "/maxlad:20210101" doch alle Dateien, auf die am letzten Mal am 1.01.2021 zugegriffen wurde... oder nicht? So habe ich es jedenfalls recherchiert. Wenn ich diese Batch ausführe, passiert nichts. Grüße, imebro
  12. Hallo und danke nochmal... Natürlich hast Du Recht, aber das hier hatten wir ja schon mal am Anfang (oder Mitte) dieses Threads. Ich habe diese Frage hier wegen einem akuten Problem gestellt. Um jetzt zuerst mal PS zu lernen, habe ich nicht die Zeit... ich muss ja das Problem irgendwie lösen. Daher hatte ich einfach gehofft, dass mir hier jemand einfach mit einem Code weiterhelfen könnte, mit dem ich das hinbekomme. Mir ist egal, ob es PowerShell, Batch oder Robocopy etc. ist... Ich bin kein IT-ler, sondern mache das hier "so gut es irgendwie geht". Hatte ich alles schon vor mehreren Seiten erklärt Falls Du mir also mit einem Code weiterhelfen magst.......... sehr gerne Grüße, imebro
  13. Danke Dir... Keine Ahnung, ob das mit dem Get-Date zu tun hat. Ich fand nur merkwürdig, dass nur die Dateien aufgeführt wurden, die am Ende NICHT gelöscht wurden. Habe übrigens bei einem weiteren Versuch aus der 2. Zeile das "-Exclude $exclude" wieder entfernt. Aber auch da erhalte ich genau das gleiche Ergebnis mit diesem Zusatz Cmdlet Remove-Item an der Befehlspipelineposition 1 Geben Sie Werte für die folgenden Parameter an: Path[0]: Irgendwie kapiere ich das hier überhaupt nicht. Aber ich bin ja tatsächlich auch ein absoluter Laie, was PS angeht. Bisher habe ich immer eher was mit Batchdateien gemacht. Fand das viel einfacher und verständlicher Aber da habe ich keine Möglichkeit, Dateien "älter als" zu filtern... jedenfalls nicht so, dass ich sie am Ende auch löschen könnte. Grüße, imebro
  14. OK... 1) Ich habe jetzt einen erfolgreichen Test gemacht mit dem Code (siehe erste Zeile) und dem Ergebnis nach "ausführen": $folder = '\\dasfile2\daten\Test\*' $include = '*.doc?', '*.dot?', '*.wbk?', '*.bak?', '*.xls?' $exclude = 'U1\\UU1' $date = Get-Date '01.01.2021' # Nur Word-/Excel Dokumente mit Änderungsdatum älter als $date suchen Get-ChildItem $folder -File -Include $include -Exclude $exclude -Recurse --------------------------------------- Ergbnis: Mode LastWriteTime Length Name ---- ------------- ------ ---- -a---- 25.11.2021 11:31 21470 Abl_2.dotx -a---- 21.01.2022 10:04 33625 Budget 2021_A bearbeitete 202103.xlsx -a---- 25.11.2021 11:29 19128 Ein_Bst.dotx -a---- 10.01.2022 16:12 206481 JB 2020_Ant_Mastercopy_20210505.xlsx -a---- 07.12.2021 13:55 734122 JB 2020_Ant_Mastercopy_20210413.xlsx -a---- 29.12.2021 13:47 27496 P-Mittelabruf_Projekt_20211202.xlsx -a---- 06.12.2021 13:20 18487 P-Mittelabruf_Projek_20211206_final.xlsx -a---- 13.01.2022 15:38 13043 Rundmail_Verteiler.xlsx -a---- 24.01.2022 16:03 8583 Rück für 2022.xlsx -a---- 15.12.2021 11:03 27482 W_hilfe_Rund 2020_201001.xlsx Hier werden im Ergebnis nur die Dateien aufgeführt, die NICHT älter sind, als 1.1.21. Und... wie man sieht, habe ich die folder-Angabe geändert von S:\* zu \\dasfile2\daten\Test\* Vielleicht hat auch das etwas bewirkt, den UNC-Pfad anzugeben. 2) Hänge ich die zweite Codezeile nun im 2. Schritt mit an, bleibt das Ergebnis genau gleich, wie oben auch!! 3) Hänge ich jetzt die 3. Codezeile im 3. Schritt an, erscheint nochmal das gleiche Ergebnis, jedoch mit dem Zusatz: Cmdlet Remove-Item an der Befehlspipelineposition 1 Geben Sie Werte für die folgenden Parameter an: Path[0]: Wichtig wäre noch zu erwähnen, dass ich die senkrechten Striche (Pipes??) weggelassen habe. Setze ich diese ein, passiert überhaupt nichts!! Übrigens passiert genau das Gleiche, wenn ich den Zusatz "-Exclude $exclude" aus der GetChild-Item Zeile wieder entferne. Hier der gesamte Code für Schritt 3: $folder = '\\dasfile2\daten\Test\*' $include = '*.doc?', '*.dot?', '*.wbk?', '*.bak?', '*.xls?' $exclude = 'U1\\UU1' $date = Get-Date '01.01.2021' # Nur Word-/Excel Dokumente mit Änderungsdatum älter als $date suchen Get-ChildItem $folder -File -Include $include -Exclude $exclude -Recurse Where-Object { ($_.LastWriteTime -lt $date) -and (($_.Fullname -notmatch $exclude)) } Remove-Item -Force -WhatIf Grüße, imebro
  15. Hallo und danke... OK, ich habe es versucht. Zunächst mal nur die Zeile mit "GetChildItem". Dabei erhalte ich folgende Meldung: $folder = 'S:\Test\*' $include = '*.doc?, *.dot?, *.wbk?, *.bak?, *.xls?' $exclude = 'U1\\UU1' $date = Get-Date '01.01.2021' # Nur Word-/Excel Dokumente mit Änderungsdatum älter als $date suchen Get-ChildItem $folder -File -Include $include -Recurse | ---------------------------------------------------------- Get-ChildItem $folder -File -Include $include -Recurse bei der zweiten Zeile: Where-Object { ($_.LastWriteTime -lt $date) -and (($_.Fullname -notmatch $exclude)) } bei der dritten Zeile: Remove-Item -Force -whatif Cmdlet Remove-Item an der Befehlspipelineposition 1 Geben Sie Werte für die folgenden Parameter an: Path[0]: Da wird dann nur darauf hingewiesen, dass der Pfad fehlt. Aber... Mir sagt das jetzt nicht wirklich etwas darüber aus, warum der Code ansich komplett nur .docx Dateien gelöscht hätte. Grüße, imebro
  16. Hallo und danke für Deine Antwort. Wie genau meinst Du das mit "jeden Befehl einzeln ausführen..."? Ich habe eben nochmal die zweite Codezeile wie folgt geändert: $include = '*.doc?, *.dot?, *.wbk?, *.bak?, *.xls?' Vorher waren ja hinter und vor jedem einzelnen Eintrag noch diese Anführungsstriche ('). Dann tut sich aber überhaupt nichts, nachdem ich den Code ausgeführt habe. Grüße, imebro
  17. Hallo nochmal, habe jetzt einen Testlauf mit einem Testverzeichnis gemacht. Zunächst mal mit aktiviertem "-whatif". In dem Verzeichnis u. den Unterverzeichnissen liegen Word- u. Exceldateien sowie ein paar PDF-Dateien, die erhalten bleiben sollen. Ausgeschlossen werden sollte das Unterverzeichnis "U1\UU1". Aber wie Ihr im Ergebnis sehr, funktioniert der Code offenbar nur bei den ".docx" Dateien. Hier mal ein Screenshot des Ergebnisses: Was müßte ich am Code ändern? Grüße, imebro
  18. Hallo Jan, vielen Dank für die Hilfe. So verstehe ich es schon recht gut... Die erste Möglichkeit ist mir "sympathischer" da ich sie besser verstehe. Ich nehme an, dass das Ergebnis gleich sein wird. Die "Include"-Codezeile habe ich jetzt so abgeändert: $include = '*.doc?', '*.bak?', '*.xls?' Ich möchte auch nach allen Excel-Dateien suchen (also xls, xlsx, xlsm...). Denke das ist OK so. Werde dann jetzt (vorsichtshalber) doch mal ein Verzeichnis auf dem Laufwerk "S" anlegen, dort ein paar .doc und ein paar .bak Dateien rein kopieren, dann den Code entsprechend der Verzeichnisse anpassen und dann testen. Bin sehr gespannt Grüße, imebro
  19. @Lian Schön, dass es auch noch Verständnis gibt... Zur Mitarbeit: Ich habe ja entsprechend mitgearbeitet und auch einen weiteren Code-Vorschlag selbst erstellt. Den wollte ich halt nur mal hier vorstellen mit der Frage, ob dieser Code so ok ist. Ich will halt auch keinen Code, der Dateien löscht, einfach mal so ausprobieren, was verständlich sein dürfte Am Ende geht es mir lediglich noch darum, wie ich den ja bereits funktionierenden SUCH-Code in den LÖSCH-Code umwandeln kann. Wie gesagt - hierzu habe ich bereits meinen Code hochgeladen. Und dann eben noch die Frage, wie ich aus dem Filter für die Suche, bzw. Löschung von Dateien ".doc" erweitere auf ".bak" (es sollen also alle .doc und .bak Dateien gelöscht werden). Das dürfte ja nun wirklich kein so großes Problem darstellen und erst recht nicht zu "haarsträubenden Aktionen" (siehe Dein Punkt 1) führen. Und auch dazu hatte ich ja bereits einen Code in meinen Thread eingefügt. Freue mich selbstverständlich über kompetente Hilfe für den noch kleinen Rest Zur Vereinfachung hier nochmal der von mir erweiterte Code mit dem Versuch, die ".doc" und ".bak" Dateien ebenso zu löschen: $folder = 'S:\' $filter = '*.doc?, *.bak?' $exclude = 'Archiv\\Datenschutz|Archiv\\Puetz\\Nachlässe|ADMIN\\S E C U R I T Y' $date = Get-Date '01.01.2012' # Nur Word-Dokumente mit Änderungsdatum älter als $date suchen Get-ChildItem $folder -File $_ -Filter $filter | -Recurse | Where-Object { ($_.LastWriteTime -lt $date) -and (($_.Fullname -notmatch $exclude)) } | Select-Object -ExpandProperty Fullname | remove-item -Force -whatif In diesem Code habe ich oben zusätzlich "$filter" eingesetzt und im Code weiter unten dann den Zusatz "$_ -Filter $filter". Und ich muss wohl am Ende lediglich das "-whatif" entfernen, um tatsächlich zu löschen... Danke und schöne Grüße, imebro
  20. ...vielen Dank für die weitere Belehrung. Mit einer solchen Einstellung kann man natürlich auch durch´s Leben gehen. Ich jedenfalls bin aus diesem Forum hier raus. Grüße, imebro
  21. @Nobbyaushb Danke für Deinen Beitrag und die Tipps. Aber wie ich ja bereits geschrieben habe, sind wir nur eine SEHR kleine Institution, ohne den entspr. finanziellen Background. Darüber hinaus besteht meine eigentliche Aufgabe ja nicht aus IT. Hier geht es lediglich um ein kleines Lösch-Script und ich habe ja schon viel selbst recherchiert. Ich kann nicht so ganz nachvollziehen, warum mir als Forenmitglied die Hilfe nun plötzlich so erschwert wird. So wie ich es aus vielen anderen Foren kenne, in denen ich privat tätig bin, wird dort gerne geholfen, bis eben eine gute Lösung gefunden ist. Ich will hier nichts unterstellen!! Aber meine gestellte letzte Frage zu beantworten, dürfte doch jetzt nicht das große Problem sein... Es fühlt sich jedoch so an, als ob es hier um regelrechte Erziehungsmaßnahmen geht. Sowas kann ich kaum noch nachvollziehen. Das hier ist ein öffentliches Hilfe-Forum und ich habe nicht nach Belehrungen gefragt, sondern einfach um Hilfe bei einem Problem gebeten. Danke und Grüße, imebro
  22. Hallo @BOfH_666 Zunächst einmal danke für Deine Infos. Mir war nicht bewußt, dass es sich beim "MCSE-Board" um ein Forum handelt, welches primär für IT-Profis ist. Ich habe mir jetzt mal das Forum angeschaut, sowie auch die Forenregeln und nirgendwo einen Hinweis darauf gefunden. Für mich wirkt es wie ein öffentliches Forum, in dem jeder seine Fragen stellen kann. Wieso Du annimmst, dass ich ein IT-Profi sei, der kein Interesse an IT hat, erschließt sich mir nicht. Ich habe sowas nie geschrieben. Ich habe lediglich hier - sehr freundlich - nach Hilfe gefragt und diese ja auch erhalten. Allerdings meist mit einem unterschwellig negativen Kommentar von Dir, was ich nicht wirklich gut finde. Zu mir: Ich bin alles Andere, als ein IT-Profi. Im Gegenteil!! Ich habe situationsbedingt den EDV-Bereich auf der Arbeit übernehmen müssen, da unser IT-ler uns vor ca. 2 Jahren verlassen hat. Ich war die einzige Person, die sich eben ein bisschen mit EDV auskennt. Ich habe keinerlei IT-Ausbildung oder irgendwelche Lehrgänge besucht!! Dazu wäre auch keine Zeit (und wahrscheinlich auch kein Geld da). Daher habe ich natürlich entsprechende Fragen, die ich dann in einem passenden Forum, wie eben dem "MCSE-Board" stelle. Die IT ist nicht mein Hauptjob hier. Ich mache eigentlich etwas völlig anderes. Die IT-Fragen kommen jedoch an mich und ich muss versuchen, sie irgendwie zu lösen. Leider sind wir eine sehr kleine Institution und haben somit auch nicht den finanziellen Background, um hier Unterstützung durch eine IT-Firma stemmen zu können. Vielleicht hast Du ja nun ein bisschen mehr Verständnis für meine Fragen. Es ist leider so, dass ich vom Arbeitsumfang her einfach nicht die Zeit habe, mir lange irgendwelche Testumgebungen zurecht zu bauen. Daher würde ich mich freuen, wenn man mir hier weiterhilft, was ja bisher auch schon sehr gut geschah. Danke und Grüße, imebro
  23. Hallo, ich werde es jetzt mal testen mit der tatsächlichen Löschdatei (zunächst noch nicht scharf geschaltet). Bevor ich natürlich den LÖSCH-Vorgang starte, würde ich Dich/Euch bitten, nochmal auf den Code zu schauen. Geändert habe ich lediglich die letzte Code-Zeile. Soweit meine Recherchen stimmen, sollte es durch das "-whatif" zunächst mal noch nicht scharf geschaltet sein. Entferne ich diesen Eintrag, dürfte die Löschung tatsächlich passieren... richtig? Hier der Code: $folder = 'S:\' $exclude = 'Archiv\\Datenschutz|Archiv\\Puetz\\Nachlässe|ADMIN\\S E C U R I T Y' $date = Get-Date '01.01.2012' # Nur Excel-Dokumente mit Änderungsdatum älter als $date löschen Get-ChildItem $folder -File -Filter '*.xls?' -Recurse | Where-Object { ($_.LastWriteTime -lt $date) -and (($_.Fullname -notmatch $exclude)) } | Select-Object -ExpandProperty Fullname | remove-item -Force -whatif # Scharf schalten = "-whatif" entfernen! Grüße, imebro
  24. Hallo und danke für den weiteren Tipp. Ich habe das Script jetzt einfach mal so durchlaufen lassen. Es hat jetzt funktioniert ohne Fehlermeldung Also geht´s auch mit Backslash bei "S:\" Was genau bewirken eigentlich die beiden ersten Zeilen mit "Add-Type......."? Grüße, imebro
×
×
  • Neu erstellen...