我有一个非常奇怪的问题。在我的一个 2008R2 文件服务器上,它已经存在好几年了
昨天,某个共享中大约一半的文件夹开始显示十六进制值而不是文件夹名称。子文件夹仍然显示其正确的名称。
例如,,分享/{14270683-1693-1584-1493-948150471693}\finance PO
这影响了 7TB 共享驱动器上的大约 1000 个文件夹。该共享中的所有其他文件夹均按其名称列出。
安装了 windows 2008R2 光纤连接的 SAN、Symantec AV、SCCM 客户端。
答案1
这不是答案,但我无法在评论中写下它...您需要将其更改为带有 {} 的隐藏文件夹所在的位置。
该脚本的作用是找到所有 {}(隐藏的,或应该是隐藏的),然后获取 .lnk 并查看它指向的位置(回收站、explorer.exe)。
在 PowerShell 中这是:
$path = "<PATH TO FILES>"
$hiddenDir = Get-ChildItem -Path $path -Directory -Attributes H
$links = Get-ChildItem -Path $path -Filter *.lnk
$sh = New-Object -COM WScript.Shell
foreach($link in $links){
$tarLink = $sh.CreateShortcut($link.FullName) | Select-Object FullName, Arguments
$tarLink -match 'explorer "{(\d*\-)*\d*}' | Out-Null
$foundString = $Matches[0].toString().Replace('explorer "',"")
$originalName = $link.FullName.ToString().Replace(".lnk","")
if($hiddenDir -match $foundString){
Rename-Item "<PATH TO FILE>\$foundString" $originalName
}
}