如何通过终端在Mac上获得Active Directory域名(how to get active

2019-10-19 12:52发布

基本上我试图通过终端的用户主要名称获得:username@full.name.of.activedomain.com在Windows中,我可以运行“WHOAMI / UPN”,它会输出的一切。 或者如果没有用户是不是Active Directory下。 所以WHOAMI用于Windows的作品对我来说就像魅力。 在Mac上,我发现了一个名为“主机名”命令。 而且还有一个别名,它 - $ HOSTNAME。 如果最终用户绑定到Active Directory - 将它输出它的名字吗? 换句话说 - 我会那么可以调用这个命令:echo $ USER @ $主机名获取用户主要名称...

或者也许有一些不同的命令或别名,我可以在终端使用? 请帮忙。

Answer 1:

脚本的曲子可以帮助你找出UPN上OSX:

domainName=`echo show com.apple.opendirectoryd.ActiveDirectory |
scutil | grep DomainNameFlat | awk '{print $3}'`
if [ $? -ne 0 ]
then
    echo "Failed to get domain name, exiting script"
    exit 1
fi

if [ -z $domainName ]
then
     echo "Failed to get domain name, exiting script"
     exit 1
fi

echo "AD Domain name: $domainName "

userName=`id -u -nr`
if [ $? -ne 0 ]
then
     echo "Failed to get user name, exiting script"
     exit 1
fi

echo "User name: $userName"

upn=`dscl "/Active Directory/$domainName/All Domains" -read
            /Users/$userName userPrincipalName`
if [ $? -ne 0 ]
then
    echo "Failed to get user's upn, exiting script"
    exit 1
fi


Answer 2:

我知道这可能是为时已晚。 不过它可能会帮助别人的未来。

您可以使用“klist的”命令检索登录用户的电流的UserPrincipalName。



Answer 3:

以上是一个bash脚本。 理想情况下,它需要一个她邦作为第一行。 我没有测试上面的脚本,但DSCL是“目录服务命令行”实用工具。

!在/ usr / bin中/ env的庆典



文章来源: how to get active directory domain name on Mac via Terminal