使用PowerShell,是否可以删除包含文件的目录而不提示确认操作?
当前回答
由于我的目录在C:\users中,我必须以管理员身份运行powershell,
del ./[your Folder name] -Force -Recurse
这个命令对我很管用。
其他回答
简而言之,我们可以使用rm -r -fo {folderName}递归地删除文件夹(删除里面的所有文件和文件夹)并强制
如果你有你的文件夹作为一个对象,让我们说你在相同的脚本中使用下一个命令创建它:
$folder = New-Item -ItemType Directory -Force -Path "c:\tmp" -Name "myFolder"
然后你可以像这样在相同的脚本中删除它
$folder.Delete($true)
$true -递归删除的状态
$LogPath = "E:\" # Your local of directories
$Folders = Get-Childitem $LogPath -dir -r | Where-Object {$_.name -like "*grav*"} # Your keyword name directories
foreach ($Folder in $Folders)
{
$Item = $Folder.FullName
Write-Output $Item
Remove-Item $Item -Force -Recurse -ErrorAction SilentlyContinue
}
如果你想把一个固定路径的变量和一个字符串作为动态路径连接到一个完整的路径来删除文件夹,你可能需要下面的命令:
$fixPath = "C:\Users\myUserName\Desktop"
Remove-Item ("$fixPath" + "\Folder\SubFolder") -Recurse
在变量$newPath中,连接路径现在是:"C:\Users\myUserName\Desktop\Folder\SubFolder"
因此,您可以从起点(“C:\Users\myUserName\Desktop”)删除几个目录,该起点已经在变量$fixPath中定义和固定。
$fixPath = "C:\Users\myUserName\Desktop"
Remove-Item ("$fixPath" + "\Folder\SubFolder") -Recurse
Remove-Item ("$fixPath" + "\Folder\SubFolder1") -Recurse
Remove-Item ("$fixPath" + "\Folder\SubFolder2") -Recurse
Remove-Item -LiteralPath "foldertodelete" -Force -Recurse
或者,用更短的版本
rm /path -r -force
推荐文章
- 如何运行一个PowerShell脚本而不显示窗口?
- PowerShell:仅为单个命令设置环境变量
- 是否有一种方法可以通过双击.ps1文件来使PowerShell脚本工作?
- PowerShell等价于grep -f
- “Write-Host”,“Write-Output”,或“[console]::WriteLine”之间的区别是什么?
- c#测试用户是否有对文件夹的写权限
- Powershell相当于bash的&号(&),用于分叉/运行后台进程
- PowerShell脚本在机器上返回。net框架的版本?
- 移动一个文件到服务器上的另一个文件夹
- 如何在PowerShell中获得MD5校验和
- 如何在PowerShell格式化日期时间
- PowerShell和-contains操作符
- 用Python遍历目录
- 使用PowerShell删除超过15天的文件
- 如何删除整个文件夹和内容?