Excluir vários arquivos na linha de comando do PowerShell

16

Com o PowerShell, qual é a maneira mais concisa de excluir vários arquivos explicitamente nomeados?

Por exemplo on * ix seria:

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

Atualmente estou usando:

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

Mas considero que não é ideal, por isso gostaria de ver alternativas.

    
por Matthew Flaschen 17.12.2011 / 00:57

3 respostas

23

Você pode fornecer vários arquivos do cmdlet rm do PowerShell (que é um alias para Remove-Item ), mas é necessário separá-los com vírgulas.

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

Confira Get-Help Remove-Item para mais detalhes. Ou leia alguma documentação no Microsoft TechNet.

    
por 17.12.2011 / 01:40
3

Isso é o que acabei usando:

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

Isso usa echo para passar três argumentos de string para rm ( Remove-Item ). Acredito que isso implique implicitamente o parâmetro -Path de Remove-Item. A documentação observa que "O nome do parâmetro (" -Path ") é opcional" e aceita entrada de pipeline por valor.

    
por 17.12.2011 / 00:57
0

Truque do cachorro velho, defina uma matriz primeiro. Coloque as suas coisas nele, e o RM vai embora.

$myArray = @("subDir/a.png","subDir/b.png","thirdDir/c.gif")
rm $myArray
    
por 25.11.2017 / 18:31