我想使用 powershell 从文件夹的 DFS 属性选项卡中提取信息。
本质上,我想遍历文件夹结构并递归检索每个文件夹的 dfs 信息。
我想使用 powershell 从文件夹的 DFS 属性选项卡中提取信息。
本质上,我想遍历文件夹结构并递归检索每个文件夹的 dfs 信息。
这是帮助我解决相同问题的 Powershell 代码段:
(Get-DfsnRoot -Domain example.net).Path |
% { (Get-DfsnFolder -Path (Join-Path -Path $_ -ChildPath "\*")).Path } |
% { Get-DfsnFolderTarget -Path $_ | select Path, TargetPath } |
sort Path |
ft -autosize
一些备注:
\*
末尾的尾随很重要!没有它,我得到一个“CimException”;我首先尝试了一个简单的字符串连接,但没有成功,这就是我使用 Join-Path 的原因。输出应如下所示:
Path TargetPath
---- ----------
\\example.net\Admin\AdminScripts \\FS101XY0123.example.net\SysAdmin$\AdminScripts
\\example.net\Admin\Setup \\fs302az8901.example.net\SysAdmin$\Tools\Setup
\\example.net\Admin\Tools \\fs202zz4567.example.net\SysAdmin$\Tools
...
试试dfsutil
命令:
PS C:\> dfsutil client property state $DFSPath
如果您有权查询 WMI,则可以使用Get-WmiObject
PowerShell cmdlet;你应该能够适应这个例子:
$DfsProvider = "SERVER"
$DfsPath = "\\SOME\DFS\Path"
Get-WmiObject -ComputerName $DfsProvider -Class Win32_DFSTarget `
-Filter "SELECT ServerName,ShareName,LinkName FROM Win32_DFSTarget WHERE LinkName = '$DfsPath'"