scripting - para - powershell 2.0 windows xp
Confirmación automática de la eliminación en powershell (6)
Estoy ejecutando el siguiente comando:
get-childitem C:/temp/ -exclude *.svn-base,".svn" -recurse | foreach ($_) {remove-item $_.fullname}
Lo que me incita con mucha frecuencia de esta manera:
Confirm
The item at C:/temp/f/a/d has children and the Recurse parameter was not specified. If you continue,
all children will be removed with the item. Are you sure you want to continue?
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"):
¿Cómo puedo configurarlo automáticamente en "A"?
Agregue -recurse después del elemento de eliminación, también el parámetro -force ayuda a eliminar archivos ocultos, por ejemplo:
gci C: / temp / -exclude * .svn-base, ".svn" -recurse | % {ri $ _ -force -recurse}
Agregue -confirm: $ false para suprimir la confirmación.
El valor predeterminado es: no preguntar.
Puede habilitarlo con -confirm
o deshabilitarlo con -confirm:$false
Sin embargo, todavía se le indicará, cuando el objetivo:
- es un directorio
- y no esta vacio
- y el parámetro
-recurse
no está especificado.
Para resumirlo:
Remove-Item -recurse -force -confirm:$false
... debe cubrir todos los escenarios.
Intente usar el parámetro -Force
en Remove-Item
.
Solo necesitas agregar una /A
detrás de la línea.
Ejemplo:
get-childitem C:/temp/ -exclude *.svn-base,".svn" -recurse | foreach ($_) {remove-item $_.fullname} /a
Remove-Item ./foldertodelete -Force -Recurse