Löschen Sie mehrere Dateien in der PowerShell-Befehlszeile


19

Wie lassen sich mit PowerShell mehrere explizit benannte Dateien auf übersichtliche Weise löschen?

ZB auf * ix wäre es:

rm subDir/a.png anotherDir/b.jpg thirdDir/c.gif

Ich benutze derzeit:

echo subDir/a.png anotherDir/b.jpg thirdDir/c.gif|rm

Aber ich halte es für suboptimal, deshalb würde ich gerne Alternativen sehen.

Antworten:


27

Sie können dem PowerShell- rmCmdlet (das selbst ein Alias ​​für ist Remove-Item) mehrere Dateien zuweisen , die Sie jedoch durch Kommas trennen müssen.

rm .\subDir\a.png, .\anotherDir\b.jpg, .\thirdDir\c.gif

Schauen Sie sich Get-Help Remove-Itemfür weitere Details. Oder lesen Sie die Dokumentation auf der Microsoft-Website.


4

Folgendes habe ich letztendlich verwendet:

echo subDir/a.png anotherDir/b.jpg thirdDir/c.gif|rm

Dies verwendet Echo, um drei Zeichenfolgenargumente an rm ( Remove-Item ) zu übergeben. Ich glaube, dies verwendet implizit den -PathParameter von Remove-Item . In der Dokumentation wird festgestellt, dass "der Parametername (" -Path ") optional ist" und Pipelineeingaben nach Wert akzeptiert.


Dies ist hilfreich, wenn Sie mehrere Dateien von Git kopieren / einfügen möchten.
Shaun Luttin

0

Alter Hund Trick, definieren Sie zuerst ein Array. Legen Sie Ihre Sachen hinein, und RM zum Teufel raus.

$myArray = @("subDir/a.png","subDir/b.png","thirdDir/c.gif")
rm $myArray
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.