Remove todos os volumes de todos os discos conectados - Diskpart

0

Como posso remover todos os volumes dos discos rígidos em um ambiente WinPE usando o Diskpart através de chamadas Powershell ou WMIC? A imagem do WinPE será injetada com os pacotes necessários usando o DISM antecipadamente, e eu não quero limpar os discos USB ou qualquer armazenamento conectado externamente, incluindo links iSCSI

Lembre-se de que isso será usado como parte de um ambiente de implementação no qual o sistema é limpo antes de uma imagem ser aplicada. O ambiente de implantação deve ser completamente autônoma, então quanto menos coisas voarem na tela, melhor.

    
por Bilfred 25.08.2015 / 08:54

2 respostas

3

Para fazer o mesmo através do powershell, você pode usar

Use com extrema cautela, esse script excluirá os discos rígidos!

(Get-Disk).where({$_.BusType -like "ATA"}) | Clear-Disk  -Confirm -Whatif -RemoveData -RemoveOEM

(Eu coloquei -Confirm -Whatif para ser removido, para que as pessoas não possam deletar aleatoriamente sua comp inteira! - removê-lo para deletar sua comp inteira)

Obviamente, você precisa fazer a parte "ATA" o que você precisa, e você pode precisar de um sinalizador de confirmação para o Clear-Disk (eu não tinha um disco sobressalente para testá-lo!)

Você pode usar

get-disk | fl *

Para obter uma lista de todos os discos anexados com todas as variáveis que você pode usar para filtrar.

    
por 25.08.2015 / 14:45
-1

(Respondendo a pergunta pré-editada, quando perguntado sobre como fazer isso via prompt de comando / diskpart)

select disk 0
clean
select disk 1
clean
...

Isso removerá todas as partições dos discos e as retornará aos dispositivos brutos.

Se você selecionar mais discos do que sabe, isso simplesmente causará um erro nos não existentes.

Para torná-lo mais seletivo, você precisaria escrever um script que verificasse a saída de

select disk x
disk detail 

para verificar se é um disco ata etc, então você pode executar o comando clean se for adequado

    
por 25.08.2015 / 10:49