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

Windows Powershell: Umlaute in Dateinamen und -pfaden

Mitglied: hamspirit

hamspirit (Level 1) - Jetzt verbinden

05.11.2013 um 14:02 Uhr, 14972 Aufrufe, 9 Kommentare, 1 Danke

Hallo zusammen,

mir liegt eine Textdatei vor, in der hunderte Dateien aufgeführt werden. Je Zeile eine Datei inkl. dem vollen Dateipfad.
Also in etwa so: g:\Ordner\NocheinOrdner\Datei.txt

Auf einem Windows Server 2003 sollen die in der Textdatei angegebenen Files nun per Powershell gelöscht werden.
Als Befehl soll "Get-Content Dateiliste.txt | Remove-Item" zum Einsatz kommen.

Das Problem sind nun die Umlaute in der Textdatei. Natürlich gibt es Pfade und Dateien, die mit den üblichen Umlauten ÖÄÜß benannt wurden. Und die werden von der Powershell falsch interpretiert und somit nicht gelöscht.

Ich habe nun schon alles versucht. So habe ich die Textdatei schon in der Powershell in den Editor geladen und habe darin die Umlaute ersetzt. Die Shell liest aber noch immer keine für sie lesbare Zeichen.

Danach habe ich es mit "Get-Content Dateiliste.txt | Out-File -Encoding ASCII Dateiliste-Neu.txt" versucht. Ich habe alle möglichen Encoding Formate versucht ("Unicode", "UTF7", "UTF8", "UTF32", "ASCII", "BigEndianUnicode", "Default", "OEM").
Kein Erfolg.

Was muss ich tun, damit die Powershell die Testdatei richtig liest und auch die Umlaute ordentlich berücksichtigt?

Danke vorab für jeden Hinweis!

Grüße
HamSpirit


Mitglied: colinardo
05.11.2013 um 14:44 Uhr
Hallo HamSpirit,
Das Cmdlet Get-Content kennt doch auch den Parameter -encoding UTF8 womit du festlegen kannst wie das File eingelesen wird. Hatte damit noch keine Probleme bezüglich Umlaute.

Grüße Uwe
Bitte warten ..
Mitglied: hamspirit
05.11.2013 um 14:49 Uhr
Danke für Deine Antwort, Uwe.
Woran kann ich erkennen, aus welchem Format ich komme?
Die Anzahl der Versuche steigert sich sonst enorm. ;)
Bitte warten ..
Mitglied: hamspirit
05.11.2013 um 15:06 Uhr

Danke. Ähem... geht das auch ne Spur simpler? Die Powershell ist nichts, womit ich mich täglich beschäftige. ^^
Bitte warten ..
Mitglied: colinardo
05.11.2013, aktualisiert um 16:11 Uhr
Danke. Ähem... geht das auch ne Spur simpler?
Das Thema ist nicht so einfach das es ohne Hirn einschalten funktioniert ... Normalerweise steht in einem File in den ersten 4Bytes das Encoding, leider nicht bei jeder Textdatei, z.B. wenn es ein normales ANSI-File eines Notepads ist oder wenn es sich z.B. um ein sehr seltenes System handelt. Für solche Fälle hilft eventuell diese Funktion
Normalerweise erkennt die Powershell das Encoding der Datei von selbst wenn die Datei ein BOM hat, ansonsten nimmt es das Default-Encoding des Betriebsystems, welches du dir mit [System.Text.Encoding]::Default anzeigen lassen kannst, und wenn das nicht passt kommen die Umlaute nicht korrekt zur Anzeige.

Führe mal folgenden Code auf die Datei(Pfad bitte zur Datei bitte ändern) aus und poste hier die Ausgabe, dann kann ich dir sagen um welche Codierung es sich handelt, und ob überhaupt ein BOM in den ersten 4 Byte steht ...
01.
get-content -Encoding byte -ReadCount 4 -TotalCount 4 -Path "C:\deinfile.txt"
Grüße Uwe
Bitte warten ..
Mitglied: hamspirit
07.11.2013 um 07:47 Uhr
Danke, Uwe.
Ich habe mich etwas unglücklich ausgedrückt. Das mit den 4Bytes habe ich schon verstanden. Mir ging es darum, wie man das Script in der Shell startet. Sorry.

Also... meine Datei spuckt folgende Werte aus: 100 58 92 67

Vielen Dank für Deine Hilfe.
Bitte warten ..
Mitglied: colinardo
07.11.2013, aktualisiert um 08:37 Uhr
OK das File hat kein BOM ....
Dann musst du die Kodierungen halt mal durchprobieren ...
Bitte warten ..
Mitglied: hamspirit
07.11.2013 um 08:39 Uhr
Ich glaube ich suche mir nen Prakti und lasse den die Dateien löschen. ;)

Danke, Uwe.
Bitte warten ..
Mitglied: mayho33
10.01.2014 um 16:58 Uhr
Hi hamspirit!

Kannst du mal so eine Datei hochladen? Habe das gerade mal mit einer txt versucht und keine Probleme beim Löschen der Dateien die im File angegeben sind. Auch nicht mit umlauten.

bsp:

$File = Get-Content -Path "C:\Logs\Neues Textdokument.txt"
foreach ($item in $file){
Remove-Item $item -ErrorAction SilentlyContinue
if($? -eq $true) {Write-Host "File $item gelöscht"} else {write-host "konnte Datei nicht löschen"}
}

Grüße!

mayho
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Windows Powershell - Nutzen?
Frage von DerBayaBatch & Shell15 Kommentare

Guten Abend miteinander, ich habe mich seit kurzem erst etwas mit der Windows Powershell befasst. Dazu habe ich auf ...

Batch & Shell
Powershell - Windows Dienste abfragen
gelöst Frage von EdaseinsBatch & Shell3 Kommentare

Hallo Leute, Powershell hab ich mir noch nicht so richtig angeschaut Deswegen bitte ich hier um Hilfe: ich benötige ...

Windows Server
Windows CA - Codesignatur - PowerShell
gelöst Frage von emeriksWindows Server6 Kommentare

Hi, wir haben eine interne Windows CA in der Domäne. U.a. stellen wir für die Kollegen auch Zertifikate für ...

Windows Update

PowerShell Windows Updates Installationsstatus prüfen

gelöst Frage von sautnebenWindows Update4 Kommentare

Hallo liebe Administratoren, ich versuche aktuell unser Netzwerk nach einem Patch abzusuchen und scheitere etwas an einer übersichtlichen Ausgabe. ...

Neue Wissensbeiträge
Windows 7
Win7 Update scheitert KB4512506
Information von infowars vor 4 StundenWindows 7

Falls jemand auch das Problem hat mit dem: Monatliches Sicherheitsqualitätsrollup für Windows 7 für x64-basierte-Systeme (KB4512506) Das scheint mit ...

Humor (lol)
Wenn hacken nach hinten los geht
Information von em-pie vor 1 TagHumor (lol)4 Kommentare

Moin, weil heute Freitag ist, nachfolgender kurzer Artikel zum schmunzeln:) l+f: NULL ist ein notorischer Falschparker

Windows Update
Windows: August 2019 Patchday-Probleme
Information von kgborn vor 1 TagWindows Update2 Kommentare

Ich kippe mal einige kurze Informationen hier rein - vielleicht hilft es Betroffenen. Die August 2019-Updates für Windows haben ...

Sicherheits-Tools
Kaspersky "Sicherheitslösung"
Information von Looser27 vor 2 TagenSicherheits-Tools1 Kommentar

Wieso überrascht mich das nicht wirklich? Kaspersky gefährdet Privatsphäre

Heiß diskutierte Inhalte
SAN, NAS, DAS
Leiser stromsparender Debian EXT4 NAS-Heimserver: ECC-RAM wie betreiben?
Frage von Laser12SAN, NAS, DAS25 Kommentare

Moin, aktuell stelle ich einen Rechner zusammen, den mein Computerhändler bauen wird. Nach Jahrzehnten mit Desktops und zwei Notebooks ...

LAN, WAN, Wireless
VPN Tunnel zu PiVPN steht, aber kein Internet
gelöst Frage von KabuntelLAN, WAN, Wireless18 Kommentare

Hallo Community, habe heute PiVPN auf meinem Raspberry Pi 3b+ installiert, mit dem How To vom Kuketz-Blog Ich kann ...

Netzwerkgrundlagen
Proxmox auf dedicated Root Server mit nur einer IP nutzen
gelöst Frage von ndreier933Netzwerkgrundlagen12 Kommentare

Hallo Community, ich bin neu hier im Forum und weiß nicht ob ich das Thema richtg zugeordnet habe?Zusätzlich habe ...

Router & Routing
PfSense routing OpenVPn und IPSec
Frage von TheOnlyOneRouter & Routing11 Kommentare

Hallo zusammen, ich habe 3 Standorte die per VPN miteinander verbunden sind. (siehe Bild) Nun stehe ich vor der ...