众所周知,在 *nix 系统上,递归地rm -rf some_directory删除some_directory其下的所有文件,而无需确认。
这个命令在 Powershell 中的等价物是什么?
请注意,此处给出的 cmd答案(使用rmdir等)在 Powershell 中不起作用。尽管 Powershellrmdir为 to做了别名Remove-Item(大概有一些开关;不确定是哪个),但它并没有将cmd 样式的开关作为别名,如/s.
Tim*_*ill 10
这可能就是你要找的。似乎对搜索引擎稍加努力就会得出相同的结论。
Remove-Item C:\MyFolder -Recurse -Force
Run Code Online (Sandbox Code Playgroud)
或者,作为速记:
rm <directory-path> -r -f
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅Remove-Item 帮助页面。
Powershell 中最接近的命令是:
try {
Remove-Item -Recurse -ErrorAction:Stop C:\some_directory
} catch [System.Management.Automation.ItemNotFoundException] {}
Run Code Online (Sandbox Code Playgroud)
rm -rf在 Unix 中意味着删除文件,也意味着:
-r, -R, --recursive remove directories and their contents recursively
-f, --force ignore nonexistent files and arguments, never prompt
Run Code Online (Sandbox Code Playgroud)
Remove-Item -Force不等于rm -f.
-Force强制 cmdlet 删除无法更改的项目,例如隐藏或只读文件或只读别名或变量。
为了证明这-Force不会“忽略不存在的文件和参数,从不提示”,如果我这样做rm -r -Force thisDirectoryDoesntExist,则会导致此错误:
rm : Cannot find path 'C:\thisDirectoryDoesntExist' because it does not exist.
Run Code Online (Sandbox Code Playgroud)
一行是rm -r -ErrorAction:SilentlyContinue,但这会丢弃不是不存在错误的错误。
| 归档时间: |
|
| 查看次数: |
9494 次 |
| 最近记录: |