{"id":627,"date":"2020-03-02T17:31:11","date_gmt":"2020-03-02T16:31:11","guid":{"rendered":"http:\/\/hslomka.de\/techno\/?p=627"},"modified":"2021-05-21T11:28:35","modified_gmt":"2021-05-21T11:28:35","slug":"umbenennung-von-dateien-per-powershell","status":"publish","type":"post","link":"https:\/\/techno.slomka.biz\/?p=627","title":{"rendered":"Umbenennung von Dateien per powershell"},"content":{"rendered":"<p>In Linux Umgebungen haben Administratoren f\u00fcr Logdateien  von WebSphere Application Server, Tomcat und andere Middleware Produkte meist Skripte, um die Protokolle t\u00e4glich oder w\u00f6chentlich umzubenennen (per crontab).<\/p>\n<p>Unter Windows habe ich auf die schnelle keine vern\u00fcnftige Scriptl\u00f6sung gefunden. Meine L\u00f6sung stelle ich in meinem Azure DevOps Projekt <a href=\"https:\/\/dev.azure.com\/slommi\/pwshLogSwitch\">pwshLogSwitch<\/a> zur Verf\u00fcgung.<\/p>\n<p>Das kleine Script erwartet mindestens ein Startverzeichnis als Parameter. Alle Dateien in diesem Verzeichnis und darunter werden umbenannt, solange die Kriterien passen.<\/p>\n<p>Die Auswahlkriterien werden mit den Parametern<br \/>\n-Filter<br \/>\n-IncludePattern<br \/>\n-ExcludePattern<br \/>\ndefiniert und entsprechen den gleichnamigen Parametern von Get-ChildItem. Es k\u00f6nnen auch regul\u00e4re Ausdr\u00fccke und Wildcards \u00fcbergeben werden.<\/p>\n<p>Als Verzeichnis k\u00f6nnen mehrere Verzeichnisnamen per : getrennt \u00fcbergeben werden.<\/p>\n<p>IncludePattern und ExcludePattern k\u00f6nnen ebenfalls mehrere Werte enthalten. Diese sind per Komma zu trennen.<\/p>\n<p>Beispiele:<\/p>\n<p class=\"kasten\">logswitch.ps1 -s -x *.ps1 -i &#8216;*.ot,*.out&#8217; -d folder1:folder2:nonexistingFolder<\/p>\n<p class=\"kasten\">logswitch.ps1 -simulate -ExcludePattern *.ps1 -IncludePattern &#8216;*.ot,*.out&#8217; -Directories folder1:folder2:nonexistingFolder<\/p>\n<p class=\"kasten\">logswitch.ps1 -x &#8216;[2][0][12][0-9]*,1.*&#8217; -f *.log -d folder1:folder2:nonexistingFolder<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Linux Umgebungen haben Administratoren f\u00fcr Logdateien von WebSphere Application Server, Tomcat und andere Middleware Produkte meist Skripte, um die Protokolle t\u00e4glich oder w\u00f6chentlich umzubenennen (per crontab). Unter Windows habe ich auf die schnelle keine vern\u00fcnftige Scriptl\u00f6sung gefunden. Meine L\u00f6sung stelle ich in meinem Azure DevOps Projekt pwshLogSwitch zur Verf\u00fcgung. Das kleine Script erwartet mindestens ein Startverzeichnis als Parameter. Alle Dateien in diesem Verzeichnis und darunter werden umbenannt, solange die Kriterien passen. Die Auswahlkriterien werden mit den Parametern -Filter -IncludePattern -ExcludePattern definiert und entsprechen den gleichnamigen Parametern von Get-ChildItem. Es k\u00f6nnen auch regul\u00e4re Ausdr\u00fccke und Wildcards \u00fcbergeben werden. Als Verzeichnis k\u00f6nnen mehrere Verzeichnisnamen per : getrennt \u00fcbergeben werden. IncludePattern und ExcludePattern k\u00f6nnen ebenfalls mehrere Werte enthalten. Diese sind per Komma zu trennen. Beispiele: logswitch.ps1 -s -x *.ps1 -i &#8216;*.ot,*.out&#8217; -d folder1:folder2:nonexistingFolder logswitch.ps1 -simulate -ExcludePattern *.ps1 -IncludePattern &#8216;*.ot,*.out&#8217; -Directories folder1:folder2:nonexistingFolder logswitch.ps1 -x &#8216;[2][0][12][0-9]*,1.*&#8217; -f *.log -d folder1:folder2:nonexistingFolder<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11,38],"tags":[],"class_list":["post-627","post","type-post","status-publish","format-standard","hentry","category-middleware","category-powershell"],"_links":{"self":[{"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/posts\/627","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=627"}],"version-history":[{"count":1,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/posts\/627\/revisions"}],"predecessor-version":[{"id":879,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=\/wp\/v2\/posts\/627\/revisions\/879"}],"wp:attachment":[{"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=627"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=627"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/techno.slomka.biz\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=627"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}