Ordner bin/obj per PowerShell löschen

Wenn man an mehreren Projekten gleichzeitig arbeitet, so nehmen die Projekte durch die bin und obj Ordner einiges an Speicherplatz auf der Festplatte ein. Daher bietet es sich an in regelmäßigen Abständen diese Ordner zu löschen, um wieder Speicherplatz zur Verfügung zu haben. Hier gibt es nur ein Problem, dass der Vorgang von Hand einiges an Zeit in Anspruch nimmt. Daher habe ich mich ein wenig mit der PowerShell befasst und habe einen Befehl gefunden, welcher mit nur einer Zeile alle bin und obj Ordner entfernen kann.

Als Ausgangslage betrachten wir einmal meinen GitHub-Ordner mit zahlreichen Projekten, welche ich auf GitHub hoste.

Wie man sehen kann, liegen hier aktuell gute 85.000 Dateien mit einem Speicherverbrauch von 2,75GB. Wir öffnen nun eine PowerShell-Konsole und navigieren zum GitHub-Ordner. Anschließend rufen wir den folgenden Befehl auf:

Get-ChildItem -inc bin,obj -rec | Remove-Item -rec -force

Dieser Befehl iteriert nun rekursiv durch die Unterordner und holt sich alle bin und obj Ordner. Diese werden dann per Pipe and Remove-Item zum Löschen übergeben.

Je nach Größe des Ordners kann der Befehl einige Sekunden bis Minuten in Anspruch nehmen. Das Ergebnis kann sich dann im Anschluss aber durchaus sehen lassen:

Der Speicherplatz hat sich nahezu halbiert und es sind nun auch 20.000 Dateien weniger in den Ordner. Somit kann man mit wenig Aufwand die bin und obj Ordner seiner Visual Studio Projekte per PowerShell löschen.

Es gibt sogar noch eine weitere Schreibweise, welche deutlich kürzer ist, aber exakt das gleiche durchführt, da hier Aliase verwendet werden:

gci -inc bin,obj -rec | rm -rec -force
Git-Befehle, welche jeder Entwickler kennen sollte #1 Transparenz in HEX-Farbwerten NuGet: RandomUserSharp