我使用下面的Windows PowerShell脚本提取特定Yammer组的所有成员,并将输出作为.csv文件存储在本地计算机上。
我需要的是将此输出保存为Azure SQL DB中的表。正确的方法是什么:
- 是否修改以下脚本以将数据保存在Azure表中
- 是否使用某些Azure SQL功能
- 还有别的吗?我将感谢你的帮助
$GroupId=xxxxx
$Token = "xxxx"
$Headers = @{ "Authorization" = "Bearer "+$Token }
$GroupCycle = 1
DO
{
$GetMoreGroupsUri = "https://www.yammer.com/api/v1/users/in_group/$GroupId.xml?page=$GroupCycle"
write-host ("REST API CALL : $GetMoreGroupsUri")
[xml]$Xml = ((Invoke-WebRequest -Uri $GetMoreGroupsUri -Method Get -Headers $Headers).content)
$YammerGroups += $Xml.response.users.user
$GroupCycle ++
$GroupCount += $Xml.response.users.user.count
write-host ("GROUPMEMBER COUNT : $GroupCount")
}
While ($Xml.response.users.user.count -gt 0)
$YammerGroups | Where {$_} | Export-Csv "$GroupId.csv" -Delimiter ","
我会以稍微不同的方式处理这个问题。我会使用Azure来存储我需要的变量的值,并将脚本保存在其他可以云访问的地方,Sharepoint和GIT都会出现在我的脑海中。
以下是有关Azure DB PowerShell模块AzTable的文档:https://learn.microsoft.com/en-us/azure/storage/tables/table-storage-how-to-use-powershell
以下是几个亮点:
#Install Module
Install-Module AzTable
#Get Table Contents
Get-AzStorageTable –Context $ctx | select Name
模块定义非常好。我鼓励您查看Microsoft文档中列出的所有不同调用。
以下是一个细分:
- 使用Sharepoint或Git存储脚本
- 如果你想存储价值,Azure DB非常棒。使用PowerShell模块AzTable与其交互。您可以根据需要写入和读取表
- 如果您需要动态变量,只需调整代码即可读取表值并对其进行变量化。在一些循环中应该很容易实现