Powershell 命令: rm-rf

rm是去除项目,但是什么是参数 -rf做或意味着什么?


只要我输入 help-rf,它就会打印 Powershell 中可用命令的完整列表。如果在 Powershell 中键入 rm -rf会发生什么?从周围的阅读,我已经收集到,它会删除驱动器上的一切?我不确定?

还有,rm -rfrm -rf /是一样的吗?

102816 次浏览

PowerShell 不是 UNIX。 rm -rf是 UNIX shell 代码,而不是 PowerShell 脚本。

看出区别了吗?

在 UNIX 上,仅 rm -rf是无效的。您告诉了它通过 rm拿开做什么,rm0的属性是 rrm1的属性是 f,但是您没有告诉它应该对哪些操作进行操作。rm -rf /path/to/delete/是指 rm(拿开) ,其属性 r(rm0)和 f(rm1)位于目录 /path/to/remove/及其子目录中。

PowerShell 上正确的等效命令应该是:

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

请注意,PowerShell 中的 -f对于 -Filter-Force是不明确的,因此需要使用 -fo

你必须使用:

Remove-Item C:\tmp -Recurse -Force

或(短)

rm C:\tmp -Recurse -Force

这是行为类似于 rm -rf的一行程序。它首先检查路径是否存在,然后尝试删除它。

if (Test-Path ./your_path) { rm -r -force ./your_path}