{"id":6862,"date":"2026-08-16T06:40:25","date_gmt":"2026-08-16T06:40:25","guid":{"rendered":"https:\/\/technodidact.de\/?p=6862"},"modified":"2026-08-16T06:40:26","modified_gmt":"2026-08-16T06:40:26","slug":"die-kunst-der-digitalen-ordnung-ein-powershell-skript-zur-dateityp-analyse","status":"publish","type":"post","link":"https:\/\/technodidact.de\/en\/die-kunst-der-digitalen-ordnung-ein-powershell-skript-zur-dateityp-analyse\/","title":{"rendered":"Die Kunst der digitalen Ordnung: Ein PowerShell-Skript zur Dateityp-Analyse"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>Von DerSchneider<\/strong><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Einleitung<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">In einer Welt, in der digitale Datenmengen exponentiell wachsen, wird die F\u00e4higkeit, den eigenen Datenbestand zu durchschauen und zu strukturieren, zur Schl\u00fcsselkompetenz. Wer kennt nicht das Gef\u00fchl, auf einem Laufwerk nach einer bestimmten Datei zu suchen und sich durch ein Labyrinth aus unstrukturierten Ordnern zu k\u00e4mpfen? Die Herausforderung besteht nicht nur darin, Dateien zu finden, sondern auch darin, einen \u00dcberblick \u00fcber die eigene digitale Landschaft zu gewinnen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Hier setzt ein kleines, aber feines PowerShell-Skript an. Es ist mehr als nur ein Werkzeug zur Dateisuche \u2013 es ist ein Instrument zur Selbstreflexion des eigenen Datenverhaltens. Indem es Dateien nach ihren Erweiterungen kategorisiert und auflistet, macht es das Unsichtbare sichtbar: Es zeigt, welche Datentypen unseren digitalen Fu\u00dfabdruck pr\u00e4gen. Es offenbart, wie viel Speicherplatz unsere Musiksammlung tats\u00e4chlich belegt, ob Dokumente oder Bilder dominieren und wo potenzielle Speicherfresser versteckt liegen.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 1: Das vollst\u00e4ndige Skript &#8211; Ein detaillierter Blick<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Bevor wir in die Bedienung einsteigen, pr\u00e4sentiere ich das vollst\u00e4ndige Skript. Es ist so konzipiert, dass es ohne weitere Anpassungen funktioniert:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Definiere Kategorien fuer Dateitypen<\/em>\n$categories = @{\n    \"Musik\"    = @(\".mp3\", \".wav\", \".flac\", \".aac\", \".ogg\", \".wma\")\n    \"Videos\"   = @(\".mp4\", \".avi\", \".mkv\", \".mov\", \".wmv\", \".flv\")\n    \"Bilder\"   = @(\".jpg\", \".jpeg\", \".png\", \".gif\", \".bmp\", \".tiff\")\n    \"Dokumente\" = @(\".pdf\", \".docx\", \".xlsx\", \".pptx\", \".txt\", \".rtf\")\n}\n\n<em># Schritt 1: Dateitypen auswaehlen<\/em>\nWrite-Host \"==========================================\" -ForegroundColor Cyan\nWrite-Host \"   DATEITYP-ANALYSE - POWERED BY POWERSHELL\" -ForegroundColor Yellow\nWrite-Host \"==========================================\" -ForegroundColor Cyan\nWrite-Host \"\"\nWrite-Host \"Verfuegbare Kategorien: $($categories.Keys -join ', ')\" -ForegroundColor Green\nWrite-Host \"Beispiel: 'Musik,.pdf,.mp4' oder nur 'Videos'\" -ForegroundColor Gray\nWrite-Host \"\"\n$inputTypes = Read-Host \"Geben Sie gewuenschte Kategorien\/Erweiterungen ein (kommagetrennt)\"\n\n<em># Extrahiere Erweiterungen aus Eingabe<\/em>\n$selectedExtensions = @()\nforeach ($item in $inputTypes -split ',') {\n    $item = $item.Trim()\n    if ($categories.ContainsKey($item)) {\n        $selectedExtensions += $categories[$item]\n        Write-Host \"  -&gt; Kategorie '$item' hinzugefuegt\" -ForegroundColor Cyan\n    }\n    elseif ($item -match '^\\..+') {\n        $selectedExtensions += $item.ToLower()\n        Write-Host \"  -&gt; Erweiterung '$item' hinzugefuegt\" -ForegroundColor Cyan\n    }\n    else {\n        Write-Host \"  -&gt; Unbekannter Begriff: '$item' - Uebersprungen\" -ForegroundColor Yellow\n    }\n}\n\n<em># Pr\u00fcfen ob \u00fcberhaupt Erweiterungen ausgew\u00e4hlt wurden<\/em>\nif ($selectedExtensions.Count -eq 0) {\n    Write-Host \"`nKeine gueltigen Erweiterungen ausgewaehlt. Das Skript wird beendet.\" -ForegroundColor Red\n    exit\n}\n\nWrite-Host \"`nFolgende Erweiterungen werden durchsucht:\" -ForegroundColor Green\n$selectedExtensions | ForEach-Object { Write-Host \"  - $_\" }\n\n<em># Schritt 2: Laufwerke auswaehlen<\/em>\n$allDrives = Get-PSDrive -PSProvider 'FileSystem' | \n             Where-Object { $_.Used -gt 0 } | \n             Select-Object -ExpandProperty Root\n\nWrite-Host \"`n==========================================\" -ForegroundColor Cyan\nWrite-Host \"Verfuegbare Laufwerke:\" -ForegroundColor Green\n$allDrives | ForEach-Object { \n    $driveInfo = Get-PSDrive -Name $_.Trim(':')\n    if ($driveInfo) {\n        $freeSpaceGB = [math]::Round($driveInfo.Free \/ 1GB, 2)\n        $usedSpaceGB = [math]::Round($driveInfo.Used \/ 1GB, 2)\n        Write-Host \"  - $_ (Frei: $freeSpaceGB GB, Belegt: $usedSpaceGB GB)\"\n    } else {\n        Write-Host \"  - $_\"\n    }\n}\n\nWrite-Host \"\"\n$inputDrives = Read-Host \"Geben Sie zu durchsuchende Laufwerke\/Pfade ein (kommagetrennt, 'Alle' fuer alles)\"\n\nif ($inputDrives -eq \"Alle\") {\n    $searchPaths = $allDrives\n    Write-Host \"  -&gt; Alle Laufwerke werden durchsucht\" -ForegroundColor Cyan\n}\nelse {\n    $searchPaths = $inputDrives -split ',' | ForEach-Object { $_.Trim() }\n    Write-Host \"  -&gt; Folgende Pfade werden durchsucht:\" -ForegroundColor Cyan\n    $searchPaths | ForEach-Object { Write-Host \"    - $_\" }\n}\n\n<em># Schritt 3: Suche durchfuehren<\/em>\nWrite-Host \"`n==========================================\" -ForegroundColor Cyan\nWrite-Host \"Starte Suche...\" -ForegroundColor Yellow\nWrite-Host \"Dies kann je nach Datenmenge einige Minuten dauern...\" -ForegroundColor Gray\nWrite-Host \"\"\n\n$results = @()\n$totalFiles = 0\n$startTime = Get-Date\n\nforeach ($path in $searchPaths) {\n    if (Test-Path $path) {\n        Write-Host \"Durchsuche: $path...\" -ForegroundColor Cyan\n        $files = Get-ChildItem -Path $path -Recurse -File -ErrorAction SilentlyContinue\n        $foundFiles = $files | Where-Object { $_.Extension -in $selectedExtensions }\n        $count = $foundFiles.Count\n        $totalFiles += $count\n        Write-Host \"  -&gt; $count Dateien gefunden\" -ForegroundColor Green\n        $results += $foundFiles\n    }\n    else {\n        Write-Host \"Pfad nicht gefunden: $path\" -ForegroundColor Red\n    }\n}\n\n$endTime = Get-Date\n$duration = $endTime - $startTime\n\nWrite-Host \"`n==========================================\" -ForegroundColor Cyan\nWrite-Host \"Suche abgeschlossen!\" -ForegroundColor Yellow\nWrite-Host \"Gesamt: $totalFiles Dateien gefunden\" -ForegroundColor Green\nWrite-Host \"Ben\u00f6tigte Zeit: $($duration.Minutes) Minute(n) und $($duration.Seconds) Sekunde(n)\" -ForegroundColor Gray\n\n<em># Schritt 4: Ergebnis exportieren<\/em>\nif ($results) {\n    $desktopPath = [Environment]::GetFolderPath(\"Desktop\")\n    $timestamp = Get-Date -Format \"yyyyMMdd_HHmmss\"\n    $csvPath = Join-Path -Path $desktopPath -ChildPath \"Dateisuche_Ergebnisse_$timestamp.csv\"\n    \n    Write-Host \"`nExportiere Ergebnisse...\" -ForegroundColor Yellow\n    \n    $exportData = $results | Select-Object @(\n        @{Name=\"Pfad\"; Expression={$_.DirectoryName}},\n        @{Name=\"Dateiname\"; Expression={$_.Name}},\n        @{Name=\"Typ\"; Expression={$_.Extension}},\n        @{Name=\"Groesse(MB)\"; Expression={[math]::Round($_.Length \/ 1MB, 2)}},\n        @{Name=\"Groesse(GB)\"; Expression={[math]::Round($_.Length \/ 1GB, 4)}},\n        @{Name=\"Aenderungsdatum\"; Expression={$_.LastWriteTime}},\n        @{Name=\"Erstelldatum\"; Expression={$_.CreationTime}}\n    )\n    \n    $exportData | Export-Csv -Path $csvPath -NoTypeInformation -Delimiter \";\" -Encoding UTF8\n\n    <em># Zus\u00e4tzlich eine Zusammenfassung in einer Textdatei<\/em>\n    $summaryPath = Join-Path -Path $desktopPath -ChildPath \"Dateisuche_Zusammenfassung_$timestamp.txt\"\n    \n    $summary = @\"\n===========================================\nZUSAMMENFASSUNG DER DATEISUCHE\n===========================================\n\nDurchsuchte Pfade:\n$($searchPaths -join \", \")\n\nGesuchte Erweiterungen:\n$($selectedExtensions -join \", \")\n\nGesamtanzahl gefundener Dateien: $totalFiles\n\nGr\u00f6\u00dfenstatistik:\n- Kleinste Datei: $([math]::Round(($results | Measure-Object -Property Length -Minimum).Minimum \/ 1KB, 2)) KB\n- Gr\u00f6\u00dfte Datei: $([math]::Round(($results | Measure-Object -Property Length -Maximum).Maximum \/ 1GB, 2)) GB\n- Durchschnittliche Gr\u00f6\u00dfe: $([math]::Round(($results | Measure-Object -Property Length -Average).Average \/ 1MB, 2)) MB\n- Gesamtspeicherverbrauch: $([math]::Round(($results | Measure-Object -Property Length -Sum).Sum \/ 1GB, 2)) GB\n\nTop 5 gr\u00f6\u00dfte Dateien:\n\"@\n\n    $topFiles = $results | Sort-Object -Property Length -Descending | Select-Object -First 5\n    $counter = 1\n    foreach ($file in $topFiles) {\n        $summary += \"`n$counter. $($file.Name)`n\"\n        $summary += \"   Pfad: $($file.DirectoryName)`n\"\n        $summary += \"   Gr\u00f6\u00dfe: $([math]::Round($file.Length \/ 1GB, 2)) GB`n\"\n        $counter++\n    }\n\n    $summary += @\"\n\nDateitypen-Verteilung:\n\"@\n\n    $extensionStats = $results | Group-Object -Property Extension | Sort-Object -Property Count -Descending\n    foreach ($ext in $extensionStats) {\n        $summary += \"`n- $($ext.Name): $($ext.Count) Dateien, $([math]::Round(($ext.Group | Measure-Object -Property Length -Sum).Sum \/ 1GB, 2)) GB\"\n    }\n\n    $summary += @\"\n\n===========================================\nErstellt am: $(Get-Date -Format \"dd.MM.yyyy HH:mm:ss\")\n===========================================\n\"@\n\n    $summary | Out-File -FilePath $summaryPath -Encoding UTF8\n\n    Write-Host \"Ergebnisse gespeichert unter:\" -ForegroundColor Green\n    Write-Host \"  CSV-Datei: $csvPath\" -ForegroundColor Cyan\n    Write-Host \"  Zusammenfassung: $summaryPath\" -ForegroundColor Cyan\n    Write-Host \"\"\n    \n    Write-Host \"Oeffne Ergebnisdateien...\" -ForegroundColor Yellow\n    Start-Process $csvPath\n    Start-Process $summaryPath\n}\nelse {\n    Write-Host \"`nKeine Dateien gefunden.\" -ForegroundColor Yellow\n}\n\nWrite-Host \"`n==========================================\" -ForegroundColor Cyan\nWrite-Host \"Skript abgeschlossen. Druecken Sie eine Taste zum Beenden...\" -ForegroundColor Gray\nRead-Host<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 2: Installation und Einrichtung &#8211; Schritt f\u00fcr Schritt<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Voraussetzungen<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Bevor Sie das Skript nutzen k\u00f6nnen, stellen Sie sicher, dass folgende Voraussetzungen erf\u00fcllt sind:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Anforderung<\/th><th class=\"has-text-align-left\" data-align=\"left\">Beschreibung<\/th><\/tr><\/thead><tbody><tr><td><strong>Betriebssystem<\/strong><\/td><td>Windows 7, 8, 10 oder 11<\/td><\/tr><tr><td><strong>PowerShell-Version<\/strong><\/td><td>Version 3.0 oder h\u00f6her (in Windows 10\/11 standardm\u00e4\u00dfig vorhanden)<\/td><\/tr><tr><td><strong>Berechtigungen<\/strong><\/td><td>Administratorrechte f\u00fcr die Suche in Systemordnern<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Installation des Skripts<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Methode 1: Manuelle Erstellung<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>\u00d6ffnen Sie den\u00a0<strong>Editor Ihrer Wahl<\/strong>\u00a0(z.B. Notepad, Notepad++, Visual Studio Code)<\/li>\n\n\n\n<li>Kopieren Sie das vollst\u00e4ndige Skript in den Editor<\/li>\n\n\n\n<li>Speichern Sie die Datei mit der Erweiterung\u00a0<strong>.ps1<\/strong>, z.B.\u00a0<code>DateiAnalyse.ps1<\/code><\/li>\n\n\n\n<li>W\u00e4hlen Sie als Speicherort einen gut erreichbaren Ordner, z.B. den Desktop oder\u00a0<code>C:\\Scripts<\/code><\/li>\n<\/ol>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Methode 2: Direkte Erstellung in PowerShell ISE<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>\u00d6ffnen Sie die\u00a0<strong>PowerShell ISE<\/strong>\u00a0(als Administrator)<\/li>\n\n\n\n<li>Kopieren Sie das Skript in das Editor-Fenster<\/li>\n\n\n\n<li>Speichern Sie die Datei mit\u00a0<strong>Strg+S<\/strong>\u00a0und w\u00e4hlen Sie einen Namen, z.B.\u00a0<code>DateiAnalyse.ps1<\/code><\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Ausf\u00fchrungsrichtlinie anpassen<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Standardm\u00e4\u00dfig blockiert PowerShell die Ausf\u00fchrung von Skripten aus Sicherheitsgr\u00fcnden. Sie m\u00fcssen die Ausf\u00fchrungsrichtlinie anpassen:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Als Administrator in PowerShell ausf\u00fchren:<\/em>\nSet-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Erkl\u00e4rung der Optionen:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Richtlinie<\/th><th class=\"has-text-align-left\" data-align=\"left\">Bedeutung<\/th><\/tr><\/thead><tbody><tr><td><code>Restricted<\/code><\/td><td>Keine Skriptausf\u00fchrung erlaubt (Standard)<\/td><\/tr><tr><td><code>RemoteSigned<\/code><\/td><td>Lokale Skripte d\u00fcrfen ausgef\u00fchrt werden, entfernte m\u00fcssen signiert sein<\/td><\/tr><tr><td><code>Unrestricted<\/code><\/td><td>Alle Skripte d\u00fcrfen ausgef\u00fchrt werden (nicht empfohlen)<\/td><\/tr><tr><td><code>Bypass<\/code><\/td><td>Keine Einschr\u00e4nkungen (f\u00fcr Testumgebungen)<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 3: Bedienung des Skripts &#8211; Eine detaillierte Anleitung<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Starten des Skripts<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Via PowerShell-Konsole:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Wechseln Sie zum Verzeichnis der Skript-Datei<\/em>\ncd C:\\Scripts\n\n<em># F\u00fchren Sie das Skript aus<\/em>\n.\\DateiAnalyse.ps1<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Via PowerShell ISE:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u00d6ffnen Sie die Datei in der ISE<\/li>\n\n\n\n<li>Klicken Sie auf den gr\u00fcnen &#8222;Ausf\u00fchren&#8220;-Button oder dr\u00fccken Sie\u00a0<strong>F5<\/strong><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Via Doppelklick (nach Anpassung):<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Erstellen Sie eine Verkn\u00fcpfung mit folgendem Ziel:powershellpowershell.exe -ExecutionPolicy Bypass -File &#8222;C:\\Scripts\\DateiAnalyse.ps1&#8220;<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Die interaktive Benutzeroberfl\u00e4che<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript f\u00fchrt Sie durch einen klaren, mehrstufigen Prozess:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">Schritt 1: Auswahl der Dateitypen<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">==========================================\n   DATEITYP-ANALYSE - POWERED BY POWERSHELL\n==========================================\n\nVerf\u00fcgbare Kategorien: Musik, Videos, Bilder, Dokumente\nBeispiel: 'Musik,.pdf,.mp4' oder nur 'Videos'\n\nGeben Sie gew\u00fcnschte Kategorien\/Erweiterungen ein (kommagetrennt): <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>M\u00f6gliche Eingaben:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Eingabe<\/th><th class=\"has-text-align-left\" data-align=\"left\">Bedeutung<\/th><\/tr><\/thead><tbody><tr><td><code>Musik<\/code><\/td><td>Sucht alle Musikdateien (.mp3, .wav, .flac, etc.)<\/td><\/tr><tr><td><code>Bilder,Videos<\/code><\/td><td>Sucht sowohl Bilder als auch Videos<\/td><\/tr><tr><td><code>.pdf,.docx<\/code><\/td><td>Sucht nur PDF- und Word-Dateien<\/td><\/tr><tr><td><code>Dokumente,.mp4<\/code><\/td><td>Sucht Dokumente UND MP4-Dateien<\/td><\/tr><tr><td><code>Musik,.txt<\/code><\/td><td>Sucht Musikdateien und Textdateien<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript best\u00e4tigt jede Auswahl:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">  -&gt; Kategorie 'Musik' hinzugef\u00fcgt\n  -&gt; Erweiterung '.pdf' hinzugef\u00fcgt<\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Schritt 2: Auswahl der Laufwerke<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Nach der Dateityp-Auswahl zeigt das Skript alle verf\u00fcgbaren Laufwerke mit Speicherinformationen:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">==========================================\nVerf\u00fcgbare Laufwerke:\n  - C:\\ (Frei: 45.32 GB, Belegt: 234.18 GB)\n  - D:\\ (Frei: 120.45 GB, Belegt: 89.23 GB)\n  - E:\\ (Frei: 0.00 GB, Belegt: 0.00 GB)\n\nGeben Sie zu durchsuchende Laufwerke\/Pfade ein (kommagetrennt, 'Alle' f\u00fcr alles): <\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>M\u00f6gliche Eingaben:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Eingabe<\/th><th class=\"has-text-align-left\" data-align=\"left\">Bedeutung<\/th><\/tr><\/thead><tbody><tr><td><code>Alle<\/code><\/td><td>Alle Laufwerke mit nutzbarem Speicher durchsuchen<\/td><\/tr><tr><td><code>C:\\<\/code><\/td><td>Nur Laufwerk C: durchsuchen<\/td><\/tr><tr><td><code>C:\\,D:\\Daten<\/code><\/td><td>Laufwerk C: und den Ordner &#8222;Daten&#8220; auf D: durchsuchen<\/td><\/tr><tr><td><code>C:\\Users\\Max\\Dokumente<\/code><\/td><td>Nur einen bestimmten Ordner durchsuchen<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h4 class=\"wp-block-heading\">Schritt 3: Die Suche<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript zeigt den Fortschritt an:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">==========================================\nStarte Suche...\nDies kann je nach Datenmenge einige Minuten dauern...\n\nDurchsuche: C:\\...\n  -&gt; 2543 Dateien gefunden\nDurchsuche: D:\\...\n  -&gt; 1278 Dateien gefunden\n\n==========================================\nSuche abgeschlossen!\nGesamt: 3821 Dateien gefunden\nBen\u00f6tigte Zeit: 2 Minute(n) und 34 Sekunde(n)<\/pre>\n\n\n\n<h4 class=\"wp-block-heading\">Schritt 4: Die Ergebnisse<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript erstellt zwei Dateien auf Ihrem Desktop:<\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>CSV-Datei:<\/strong><code>Dateisuche_Ergebnisse_20260304_143022.csv<\/code>\n<ul class=\"wp-block-list\">\n<li>Enth\u00e4lt alle gefundenen Dateien mit Details<\/li>\n\n\n\n<li>\u00d6ffnet sich automatisch in Excel (oder dem Standardprogramm f\u00fcr CSV)<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li><strong>Zusammenfassung:<\/strong><code>Dateisuche_Zusammenfassung_20260304_143022.txt<\/code>\n<ul class=\"wp-block-list\">\n<li>Enth\u00e4lt Statistiken und die gr\u00f6\u00dften Dateien<\/li>\n\n\n\n<li>\u00d6ffnet sich automatisch im Editor<\/li>\n<\/ul>\n<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 4: Die Funktionsweise im Detail<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Die Kategorisierungslogik<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Das Herzst\u00fcck des Skripts ist die Hashtabelle&nbsp;<code>$categories<\/code>. Sie dient als \u00dcbersetzungsmechanismus zwischen menschenlesbaren Begriffen und technischen Dateiendungen:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$categories = @{\n    \"Musik\"    = @(\".mp3\", \".wav\", \".flac\", \".aac\", \".ogg\", \".wma\")\n    \"Videos\"   = @(\".mp4\", \".avi\", \".mkv\", \".mov\", \".wmv\", \".flv\")\n    \"Bilder\"   = @(\".jpg\", \".jpeg\", \".png\", \".gif\", \".bmp\", \".tiff\")\n    \"Dokumente\" = @(\".pdf\", \".docx\", \".xlsx\", \".pptx\", \".txt\", \".rtf\")\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Warum diese Struktur?<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>Abstraktion:<\/strong>\u00a0Der Benutzer muss sich keine Endungen merken<\/li>\n\n\n\n<li><strong>Erweiterbarkeit:<\/strong>\u00a0Neue Kategorien k\u00f6nnen einfach hinzugef\u00fcgt werden<\/li>\n\n\n\n<li><strong>\u00dcbersichtlichkeit:<\/strong>\u00a0Der Code bleibt sauber und wartbar<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Die Suchlogik im Detail<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">foreach ($path in $searchPaths) {\n    if (Test-Path $path) {\n        $files = Get-ChildItem -Path $path -Recurse -File -ErrorAction SilentlyContinue\n        $foundFiles = $files | Where-Object { $_.Extension -in $selectedExtensions }\n        $results += $foundFiles\n    }\n}<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Die Komponenten:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Befehl<\/th><th class=\"has-text-align-left\" data-align=\"left\">Funktion<\/th><\/tr><\/thead><tbody><tr><td><code>Test-Path<\/code><\/td><td>Pr\u00fcft, ob der Pfad existiert<\/td><\/tr><tr><td><code>Get-ChildItem<\/code><\/td><td>Listet alle Dateien und Ordner auf<\/td><\/tr><tr><td><code>-Recurse<\/code><\/td><td>Durchsucht alle Unterordner<\/td><\/tr><tr><td><code>-File<\/code><\/td><td>Filtert nur Dateien (keine Ordner)<\/td><\/tr><tr><td><code>-ErrorAction SilentlyContinue<\/code><\/td><td>Unterdr\u00fcckt Fehler (z.B. Zugriffsverweigerung)<\/td><\/tr><tr><td><code>Where-Object<\/code><\/td><td>Filtert nach den ausgew\u00e4hlten Erweiterungen<\/td><\/tr><tr><td><code>-in<\/code><\/td><td>Pr\u00fcft, ob die Erweiterung in der Liste enthalten ist<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Die Exportlogik<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">$exportData = $results | Select-Object @(\n    @{Name=\"Pfad\"; Expression={$_.DirectoryName}},\n    @{Name=\"Dateiname\"; Expression={$_.Name}},\n    @{Name=\"Typ\"; Expression={$_.Extension}},\n    @{Name=\"Groesse(MB)\"; Expression={[math]::Round($_.Length \/ 1MB, 2)}},\n    @{Name=\"Groesse(GB)\"; Expression={[math]::Round($_.Length \/ 1GB, 4)}},\n    @{Name=\"Aenderungsdatum\"; Expression={$_.LastWriteTime}},\n    @{Name=\"Erstelldatum\"; Expression={$_.CreationTime}}\n)<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Die Datenaufbereitung:<\/strong><\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th class=\"has-text-align-left\" data-align=\"left\">Eigenschaft<\/th><th class=\"has-text-align-left\" data-align=\"left\">Berechnung<\/th><th class=\"has-text-align-left\" data-align=\"left\">Zweck<\/th><\/tr><\/thead><tbody><tr><td><code>DirectoryName<\/code><\/td><td>Direkt von der Datei<\/td><td>Zeigt den Ordnerpfad<\/td><\/tr><tr><td><code>Name<\/code><\/td><td>Direkt von der Datei<\/td><td>Zeigt den Dateinamen<\/td><\/tr><tr><td><code>Extension<\/code><\/td><td>Direkt von der Datei<\/td><td>Zeigt die Dateiendung<\/td><\/tr><tr><td><code>Groesse(MB)<\/code><\/td><td><code>Length \/ 1MB<\/code><\/td><td>Gr\u00f6\u00dfe in MB f\u00fcr \u00dcbersicht<\/td><\/tr><tr><td><code>Groesse(GB)<\/code><\/td><td><code>Length \/ 1GB<\/code><\/td><td>Gr\u00f6\u00dfe in GB f\u00fcr gro\u00dfe Dateien<\/td><\/tr><tr><td><code>Aenderungsdatum<\/code><\/td><td><code>LastWriteTime<\/code><\/td><td>Letzte \u00c4nderung<\/td><\/tr><tr><td><code>Erstelldatum<\/code><\/td><td><code>CreationTime<\/code><\/td><td>Erstellungsdatum<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 5: Erweiterungsm\u00f6glichkeiten und Innovation<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">1. Integration in die Systemverwaltung<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript kann als&nbsp;<strong>geplanter Task<\/strong>&nbsp;in Windows eingerichtet werden:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Geplanten Task erstellen<\/em>\n$action = New-ScheduledTaskAction -Execute \"powershell.exe\" -Argument \"-ExecutionPolicy Bypass -File C:\\Scripts\\DateiAnalyse.ps1\"\n$trigger = New-ScheduledTaskTrigger -Daily -At \"03:00AM\"\n$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries\nRegister-ScheduledTask -TaskName \"DateiAnalyse\" -Action $action -Trigger $trigger -Settings $settings<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Vorteile:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Automatische Berichterstellung \u00fcber Nacht<\/li>\n\n\n\n<li>Regelm\u00e4\u00dfige \u00dcberwachung der Speichernutzung<\/li>\n\n\n\n<li>Fr\u00fchzeitiges Erkennen von Speicherproblemen<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. Visuelle Aufbereitung mit Power BI<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Die CSV-Datei kann in&nbsp;<strong>Power BI<\/strong>&nbsp;importiert werden:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">1. Power BI Desktop \u00f6ffnen\n2. \"Daten abrufen\" -&gt; \"Text\/CSV\"\n3. Die erstellte CSV-Datei ausw\u00e4hlen\n4. Visualisierungen erstellen:\n   - Kuchendiagramm f\u00fcr Dateitypen\n   - Balkendiagramm f\u00fcr die gr\u00f6\u00dften Ordner\n   - Liniendiagramm f\u00fcr die Entwicklung \u00fcber Zeit<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">3. Erweiterte Filter<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript kann um erweiterte Filteroptionen erg\u00e4nzt werden:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Erweiterte Filter<\/em>\n$minSize = Read-Host \"Minimale Dateigr\u00f6\u00dfe in MB (leer lassen f\u00fcr keine Einschr\u00e4nkung)\"\n$maxSize = Read-Host \"Maximale Dateigr\u00f6\u00dfe in MB (leer lassen f\u00fcr keine Einschr\u00e4nkung)\"\n$dateFrom = Read-Host \"\u00c4nderungsdatum von (TT.MM.JJJJ, leer lassen f\u00fcr keine Einschr\u00e4nkung)\"\n$dateTo = Read-Host \"\u00c4nderungsdatum bis (TT.MM.JJJJ, leer lassen f\u00fcr keine Einschr\u00e4nkung)\"\n\n<em># Filter anwenden<\/em>\n$filteredResults = $results\nif ($minSize) {\n    $filteredResults = $filteredResults | Where-Object { $_.Length \/ 1MB -ge [int]$minSize }\n}\nif ($maxSize) {\n    $filteredResults = $filteredResults | Where-Object { $_.Length \/ 1MB -le [int]$maxSize }\n}\nif ($dateFrom) {\n    $filteredResults = $filteredResults | Where-Object { $_.LastWriteTime -ge [datetime]$dateFrom }\n}\nif ($dateTo) {\n    $filteredResults = $filteredResults | Where-Object { $_.LastWriteTime -le [datetime]$dateTo }\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">4. Automatisierte Aktionen<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Das Skript kann nicht nur berichten, sondern auch handeln:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Gro\u00dfe Dateien komprimieren<\/em>\n$largeFiles = $results | Where-Object { $_.Length \/ 1GB -gt 1 }\nforeach ($file in $largeFiles) {\n    $zipPath = $file.FullName + \".zip\"\n    Compress-Archive -Path $file.FullName -DestinationPath $zipPath\n    Remove-Item -Path $file.FullName\n    Write-Host \"Komprimiert: $($file.Name)\"\n}<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">5. Benutzerdefinierte Kategorien<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Die Kategorien k\u00f6nnen dynamisch erweitert werden:<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Benutzerdefinierte Kategorie hinzuf\u00fcgen<\/em>\n$customCategory = Read-Host \"Neue Kategorie erstellen (Name)\"\n$customExtensions = Read-Host \"Dateiendungen (kommagetrennt, z.B. .abc,.def)\"\n$categories[$customCategory] = $customExtensions -split ',' | ForEach-Object { $_.Trim() }<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">6. Integration in Unternehmensumgebungen<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr den Einsatz in Unternehmen kann das Skript erweitert werden:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Zentrales Logging:<\/strong>\u00a0Ergebnisse in eine Datenbank schreiben<\/li>\n\n\n\n<li><strong>E-Mail-Benachrichtigung:<\/strong>\u00a0Berichte per E-Mail versenden<\/li>\n\n\n\n<li><strong>Active Directory-Integration:<\/strong>\u00a0Berichte pro Benutzer erstellen<\/li>\n\n\n\n<li><strong>Azure\/Cloud-Integration:<\/strong>\u00a0Ergebnisse in Azure Storage speichern<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 6: Praxisbeispiele und Anwendungsf\u00e4lle<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Anwendungsfall 1: Speicherplatz freigeben<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Situation:<\/strong>&nbsp;Ihre Festplatte ist fast voll, Sie wissen aber nicht, wo der Speicherplatz verbraucht wird.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Skript starten<\/li>\n\n\n\n<li>Als Kategorie &#8222;Alle&#8220; ausw\u00e4hlen<\/li>\n\n\n\n<li>Laufwerk C: durchsuchen<\/li>\n\n\n\n<li>In der CSV-Datei nach den gr\u00f6\u00dften Dateien filtern<\/li>\n\n\n\n<li>Nicht mehr ben\u00f6tigte Dateien l\u00f6schen oder archivieren<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Anwendungsfall 2: Dateityp-\u00dcbersicht f\u00fcr Projekte<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Situation:<\/strong>&nbsp;Sie haben ein gro\u00dfes Projekt mit vielen Dateien verschiedener Typen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Skript starten<\/li>\n\n\n\n<li>Spezifische Erweiterungen eingeben:\u00a0<code>.pdf,.docx,.xlsx,.pptx<\/code><\/li>\n\n\n\n<li>Projektordner als Pfad angeben<\/li>\n\n\n\n<li>Ergebnisse analysieren, welche Dokumenttypen wie viel Speicher belegen<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">Anwendungsfall 3: Regelm\u00e4\u00dfige Berichterstattung<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Situation:<\/strong>&nbsp;Sie m\u00f6chten regelm\u00e4\u00dfig Berichte \u00fcber die Speichernutzung erhalten.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Skript als geplanten Task einrichten (t\u00e4glich um 03:00 Uhr)<\/li>\n\n\n\n<li>Die Zusammenfassung per E-Mail versenden (mit PowerShell\u00a0<code>Send-MailMessage<\/code>)<\/li>\n\n\n\n<li>Die CSV-Dateien in einem zentralen Ordner archivieren<\/li>\n\n\n\n<li>Entwicklung der Speichernutzung \u00fcber Zeit verfolgen<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Teil 7: Fehlerbehebung und h\u00e4ufige Probleme<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Problem 1: Skript wird nicht ausgef\u00fchrt<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Fehler: \"Die Ausf\u00fchrung von Skripts ist auf diesem System deaktiviert\"<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">Problem 2: Keine Administratorrechte<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Fehler: \"Zugriff auf C:\\System Volume Information verweigert\"<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>PowerShell als Administrator ausf\u00fchren<\/li>\n\n\n\n<li>Rechtsklick auf PowerShell -> &#8222;Als Administrator ausf\u00fchren&#8220;<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Problem 3: Speicher\u00fcberlauf<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">text<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Fehler: \"System.OutOfMemoryException\"<\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>L\u00f6sung:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Das Skript durchsucht nur bestimmte Ordner, nicht ganze Laufwerke<\/li>\n\n\n\n<li>Verwenden Sie die 64-Bit-Version von PowerShell (Standard)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Problem 4: Laufzeit zu lang<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Optimierung:<\/strong><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">powershell<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"><em># Nur die ersten 3 Ebenen durchsuchen<\/em>\nGet-ChildItem -Path $path -Recurse -Depth 3<\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Fazit und Ausblick<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Das vorgestellte PowerShell-Skript ist ein kleines Juwel der Automatisierung. Es demonstriert, wie mit wenigen Zeilen Code ein m\u00e4chtiges Werkzeug zur Selbstorganisation und Systemanalyse entstehen kann. Die Einfachheit seiner Bedienung t\u00e4uscht \u00fcber die Tiefe seiner Funktionalit\u00e4t hinweg.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">In einer Zeit, die von Datenflut und Informations\u00fcberlastung gepr\u00e4gt ist, sind solche Werkzeuge keine Spielerei mehr, sondern unverzichtbare Begleiter. Sie helfen uns, den Wald vor lauter B\u00e4umen zu sehen \u2013 oder in unserem Fall, die Festplatte vor lauter Dateien.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die vorgestellten Erweiterungsm\u00f6glichkeiten zeigen, dass das Skript nicht das Ende, sondern der Anfang einer Entwicklung sein kann. Es l\u00e4dt dazu ein, es an die eigenen Bed\u00fcrfnisse anzupassen und so zu einem noch leistungsf\u00e4higeren Instrument zu machen. Die Innovation liegt nicht im Code selbst, sondern in der F\u00e4higkeit, ihn zu nutzen und weiterzuentwickeln.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Die Zukunft dieser Technologie k\u00f6nnte folgenderma\u00dfen aussehen:<\/strong><\/p>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li><strong>KI-gest\u00fctzte Analyse:<\/strong>\u00a0Das Skript k\u00f6nnte maschinelles Lernen nutzen, um Dateien nicht nur nach Endungen, sondern nach tats\u00e4chlichem Inhalt zu klassifizieren.<\/li>\n\n\n\n<li><strong>Cloud-Integration:<\/strong>\u00a0Die Ergebnisse k\u00f6nnten direkt in Cloud-Speicherdienste exportiert werden.<\/li>\n\n\n\n<li><strong>Echtzeit-\u00dcberwachung:<\/strong>\u00a0Statt einmaliger Suche k\u00f6nnte das Skript kontinuierlich laufen und \u00c4nderungen in Echtzeit melden.<\/li>\n\n\n\n<li><strong>Mobile Anbindung:<\/strong>\u00a0Die Berichte k\u00f6nnten f\u00fcr mobile Ger\u00e4te aufbereitet werden.<\/li>\n<\/ol>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">Quellen<\/h2>\n\n\n\n<ol start=\"1\" class=\"wp-block-list\">\n<li>Microsoft Docs: PowerShell Scripting &#8211; Get-ChildItem<\/li>\n\n\n\n<li>Microsoft Docs: PowerShell Scripting &#8211; About Execution Policies<\/li>\n\n\n\n<li>Microsoft Docs: Scheduled Tasks in PowerShell<\/li>\n\n\n\n<li>Microsoft TechNet: PowerShell ISE Overview<\/li>\n\n\n\n<li>Stack Overflow: PowerShell Dateisuche &#8211; Best Practices<\/li>\n\n\n\n<li>GitHub: PowerShell Community Scripts &#8211; File Management<\/li>\n\n\n\n<li><a href=\"https:\/\/powershell.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">PowerShell.org<\/a>:\u00a0Advanced File Handling Techniques<\/li>\n\n\n\n<li>Windows Admin Center: PowerShell Scripting Guide<\/li>\n<\/ol>\n","protected":false},"excerpt":{"rendered":"<p>Von DerSchneider Einleitung In einer Welt, in der digitale Datenmengen exponentiell wachsen, wird die F\u00e4higkeit, den eigenen Datenbestand zu durchschauen und zu strukturieren, zur Schl\u00fcsselkompetenz. Wer kennt nicht das Gef\u00fchl, auf einem Laufwerk nach einer bestimmten Datei zu suchen und sich durch ein Labyrinth aus unstrukturierten Ordnern zu k\u00e4mpfen? Die Herausforderung besteht nicht nur darin, [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[38,41,17],"tags":[658,1412,10163,5475,10166,10167,10164],"class_list":["post-6862","post","type-post","status-publish","format-standard","hentry","category-alltagsphanomene","category-digitalkultur","category-im-herz","tag-automatisierung","tag-dateiverwaltung","tag-datenorganisation","tag-powershell","tag-skripting","tag-speicherplatzanalyse","tag-systemadministration"],"_links":{"self":[{"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/posts\/6862","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/comments?post=6862"}],"version-history":[{"count":1,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/posts\/6862\/revisions"}],"predecessor-version":[{"id":6863,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/posts\/6862\/revisions\/6863"}],"wp:attachment":[{"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/media?parent=6862"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/categories?post=6862"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/technodidact.de\/en\/wp-json\/wp\/v2\/tags?post=6862"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}