Ordnerstruktur per CLI unter Windows auslesen

Immer wieder benötigt man die Ordnerstruktur und die darin abgelegten Dateien als einfachen Text. Entweder um die Liste der Inhalte per eMail weiterzuleiten oder sie als einfachen Text abzuspeichern. Windows bietet einem mehrere Möglichkeiten dies zu erreichen.

Tree Tool (cmd)

Aus der MS-Dos / Windows XP Ära kommt tree und man findet es auch auf den neueren Windows Systemen.

  • tree <pfad>
    liefert die Ordner und Unterordner des gewählten Ordners
  • tree /f <pfad>
    liefert neben den Ordnern und Unterordnern auch die Dateien innerhalb der Ordner
  • tree /a <pfad> oder tree /f /a <pfad>
    liefert das Ergebnis mit reinen ASCII Zeichen

Directory Listing CMD tree

Seit Windows Vista gibt es auch die Möglichkeit den Inhalt direkt in die Zwischenablage kopieren zu lassen.

tree <path> | clip

Get-ChildItem (powershell)

Wär auf moderne Art und Weise die Ordnerstruktur textuell darstellen möchte kann sich auch mit PowerShell behelfen. Viel flexibler und mit mehr Darstellungsmöglichkeiten versehen, dass beschreibt auch Microsofts Scripting Guy.

  • Get-ChildItem -Path <path> | tree
    liefert die Ordner und Unterordner des gewählten Ordners
  • Get-ChildItem -Path <path> -File – Recurse
    liefert alle Ordner, Unterordner und Files. Jedoch geht erzeugt hier die Kombination mit tree nicht zum selben Ergebnis wie tree (cli)

Direcotry Listing PowerShell

Die Flexibilität von Get-ChildItem erlaubt auch den Export in CSV, XML und Datenbanken.

Get-ChildItem -Recurse <path> *.xml | Select-Object -Property FullName,name | Export-Csv directory_structure.csv

DIR (cli)

  • dir <path> /S
    liefert alle Ordner, Unterordner und Files. Die Ausgabe ist ähnlich zu Get-ChildItem -Path <path> -File – Recurse
  • dir <path> /S /B
    liefert alle Ordner, Unterordner und Files mit voller Pfadangabe als einfache Liste

Directory Listing CMD DIR

PowerShell + Azure + The Scripting Guy

Ed Wilson ist “The Scripting Guy” und blogged seit Jahren auf seinem Hey, Scripting Guy! Blog. Vor einigen Wochen hat er sich dem Thema Azure angenommen. Seine Posts zum Thema Azure und PowerShell möchte ich hier auflisten, weil sie einfach zu gut sind um sie nicht zu verlinken 🙂 [Updated: 10.06.2016]

Work with Azure Resource Manager

Retrieve Azure Resource Manager virtual machine

Create Azure Resource Manager virtual machines (New)

Azure PowerTip

VS Code goes 1.0!

Bei mir ist Visual Studio Code schon seit langem im Einsatz. Als langer Notepad++ Nutzer suchte ich nach einem Cross-Plattform Editor und bin vorerst auf Atom gekommen. Wer Atom nicht kennt sollte sich ihn mal genauer anschauen. Atom ist der hackable text editor des 21ten Jahrhunderts.

Das war dann auch sein Problem, ich wollte nicht am Editor basteln müssen um ihn zu verwenden, also kam ich auf VS Code. Beide verwenden die selbe Engine im Hintergrund aber VS Code ist etwas mehr “streamlined”. VS Code unterstützt auch Plugins und es gibt einige sehr gute Plugins den Editor zu erweitern, für mich war ein gutes PowerShell Plugin und die der Github Support ausschlaggebend VS Code zu behalten.

VS Code goes 1.0! Channel 9 Announcment

vs code 1.0 numbers

Windows 10 Storage Spaces und WD Green Drives

Bei mir zu Hause läuft Windows 10 als NAS Lösung auf meinem HP N40L Microserver. Als Platten hab ich 3TB WD Green Drives verbaut. Im nachhinein war das keine gute Wahl, aber jetzt muss damit gelebt werden.

Mit Linux basierenden NAS Lösungen wie RockStor waren die Platten auch ohne Probleme verwendbar. Doch da es Green Disks sind musste zuerst mit WDIDLE3 eingegriffen werden um das “Excessive Head Parking” los zu werden. Wenn das nicht gemacht wird, erhöhen sich der S.M.A.R.T Wert für “load cycles” innerhalb von einem Tag um 500 bis 600 Einheiten, was die Platte ziemlich schnell in den Tod jagt.

Mit Microsofts Storage Spaces kommt noch ein weiteres Problem dazu. Da Green Disks sehr langsam “aufwachen” werden die Platten gerne von Microsofts Storage Spaces “retired”. Damit sind sie nicht mehr Teil des Storage Pools und werden durch eine Spare Disk ersetzt bzw. die Daten der retired Disk auf die vorhanden Platten verteilt. Das ist meist weiter nicht tragisch, der Storage Pool ist damit nicht optimal genutzt aber je nach RAID Lösung weiter funktional. Wir wissen nun zwar das die Platte keine Probleme macht und alles in Ordnung ist, ihr einziges Problem ist eine Green Disk zu sein 😉 Unser Problem ist jedoch, dass MS keine Möglichkeit bietet über die GUI die Platte wieder online zu bringen oder dieses Verhalten zu verändern. Doch PowerShell hilft aus.

Continue reading “Windows 10 Storage Spaces und WD Green Drives”