2012-05-04 22 views
12

Hice un poco de investigación y aún no estoy seguro de qué es exactamente. Sé que rm es eliminar el artículo, pero no pude encontrar ninguna documentación en -rf. Cada vez que escribía ayuda, si imprimía toda la lista de comandos disponibles en PowerShell. ¿Qué sucede si escribe rm -rf en powershell? Al leer todo, he deducido que eliminará todo en el disco. ¿No estoy seguro?Powershell Comando: rm -rf

También, es rm -rf mismo que rm -rf/

Respuesta

14

PowerShell no es UNIX. rm -rf es código de shell UNIX, no scripting de PowerShell.

  • Esta es la documentación para rm (abreviatura de Remove-Item) on PowerShell.
  • Esta es la documentación para rmon UNIX.

Ver la diferencia?

En UNIX, rm -rf solo no es válido. Usted haya indicado qué hacer a través de rm para quitar con los atributos r para recursiva y f para fuerza, pero no le dijo que lo que la acción se debe hacer sobre. rm -rf /path/to/delete/ significa rm (remove ) con atributos r ( recursiva) y f (fuerza) en el directorio /path/to/remove/ y sus subdirectorios.

El comando correcto, lo que equivale en PowerShell sería:

rm C:\path\to\delete -r -fo 

Tenga en cuenta que en -f PowerShell es ambigua para -Filter y -Force y por lo tanto -fo tiene que ser utilizado.

+0

Gracias! Eso tiene sentido por qué no pude encontrar documentos en -rf. –

+0

No hay problema. Me alegro de poder ayudar. –

+1

Para completar, el equivalente de PowerShell sería 'rm \ -r -f'. Puede abreviar nombres de parámetros en PowerShell, pero no puede apilarlos. – JasonMArcher

21

Usted tiene que usar:

Remove-Item C:\tmp -Recurse -Force 

o (corto)

rm C:\tmp -Recurse -Force 
+0

Entonces ... ¿qué es rm -rf/does in powershell? –

+0

rm -rf/no funciona en powershell, es un comando * nix. –

+0

Gotcha, no lo especificó al principio, así que no estaba seguro. –

Cuestiones relacionadas