Hapus banyak file pada baris perintah PowerShell

19

Dengan PowerShell, apa cara paling ringkas untuk menghapus beberapa file yang diberi nama secara eksplisit?

Misalnya pada * ix itu akan menjadi:

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

Saya sedang menggunakan:

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

Tapi saya menganggapnya kurang optimal, jadi saya ingin melihat alternatif.

Matthew Flaschen
sumber

Jawaban:

27

Anda dapat memberikan rmcmdlet PowerShell (yang merupakan alias untuk Remove-Item) beberapa file, tetapi Anda harus memisahkannya dengan koma.

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

Lihat Get-Help Remove-Itemdetail lebih lanjut. Atau baca beberapa dokumentasi di situs web Microsoft.

William Jackson
sumber
4

Inilah yang akhirnya saya gunakan:

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

Ini menggunakan gema untuk meneruskan tiga argumen string ke rm ( Hapus-Item ). Saya percaya ini secara implisit menggunakan -Pathparameter Remove-Item . Dokumentasi mencatat bahwa "Nama parameter (" -Path ") adalah opsional" dan menerima input pipa berdasarkan nilai.

Matthew Flaschen
sumber
Ini bermanfaat untuk melakukan copy / paste beberapa file dari Git.
Shaun Luttin
0

Trik anjing tua, tentukan array terlebih dahulu. Letakkan barang-barang Anda di dalamnya, dan RM saja.

$myArray = @("subDir/a.png","subDir/b.png","thirdDir/c.gif")
rm $myArray
JP Lizotte
sumber