다음 wmic
과 같이 소유권 정보를 쿼리하는 데 사용할 수 있습니다 .
wmic path Win32_LogicalFileSecuritySetting where Path="C:\\windows\\winsxs" ASSOC /RESULTROLE:Owner /ASSOCCLASS:Win32_LogicalFileOwner /RESULTCLASS:Win32_SID
dir
이 예제 디렉토리와 같이 소유권 정보가 잘릴 수 있으므로 사용하지 마십시오 .
출력 형식을 얻으려면 DOMAIN\USER
다음 배치 스크립트를 사용할 수 있습니다.
@ECHO OFF
SETLOCAL EnableDelayedExpansion
REM Escpe the backslash with \\
SET ESCAPED=%~f1
SET ESCAPED=!ESCAPED:\=\\!
wmic path Win32_LogicalFileSecuritySetting where Path="!ESCAPED!" ASSOC /RESULTROLE:Owner /ASSOCCLASS:Win32_LogicalFileOwner /RESULTCLASS:Win32_SID > "%temp%\wmi.tmp"
for /F "skip=2 delims=€" %%G in ('type %temp%\wmi.tmp') do (call :process_wmioutput "%%G")
goto :continue
:process_wmioutput
SET UNDELIMITED=%1
SET DELIMITED=!UNDELIMITED: =€!
FOR /F "delims=€ tokens=10,12" %%G in ("!DELIMITED!") DO (ECHO %%H\%%G)
exit /B
:continue