Hi SharePoint Online PowerShellers!
This time I will give you a Quick but great function to use if you are working with OneDrive for Business:
Function to resolve a users OneDrive for Business URL
‘
Simple solution, great to have, unbelievably efficient…
Ok, this is perhaps my shortest post ever…I’ll just explain real Quick.
OneDrive for Business gets it URL from the tenantname and the users UserPrincipalName. Creating this every time can be troublesome…
This is what I use, a function I created last summer when I was tired of doing them one at the time…
It works even with users that have a different domain in the UPN than what is the tenant name.
This is it:
Function GetODfBURL($UserPrincipalName, $TenantName) # Creates a correct ODfB URL from email and TenantName/OrgName, returns URL as a String { # ConStructing OneDrive personal URL from the UPN/Email address $StrUser = $UserPrincipalName $pos= $StrUser.IndexOf("@") $len = $StrUser.Length -1 $StrUser = $StrUser.SubString(0, $pos) $StrUser = $StrUser -replace "\.", "_" $Orgpos = $pos + 1 $Orglen = $len - $pos $StrOrg = $UserPrincipalName.SubString($Orgpos, $Orglen) $StrOrgNamePos = $StrOrg.IndexOf(".") $StrOrgName = $StrOrg.SubString(0, $StrOrgNamePos) $StrOrgSuffixPos = $StrOrgNamePos +1 $StrOrgNameLen = $StrOrg.Length - $StrOrgSuffixPos $StrOrgSuffix = $StrOrg.SubString($StrOrgSuffixPos, $StrOrgNameLen) $StrOrg = $StrOrg -replace "\.", "_" $PersonalOrgURL = "https://" + $TenantName + "-my.sharepoint.com/personal/" $SiteUrl= $PersonalOrgURL + $StrUser $SiteUrl= $SiteUrl+ "_" + $StrOrg return $SiteUrl } $ODfBURL = GetODfBURL "thomas.balkestahl@blksthl.se" "blksthl"
This will give the URL: https://blksthl-my.sharepoint.com/personal/thomas_balkestahl_blksthl_se
Thats it. Use it or not :-)
References and Credits
‘
Nope, not this time…
Credits & many thanks to
To all of you.
_________________________________________________________
Enjoy!
Regards
Twitter | Technet Profile | LinkedIn
