python - 使用 Powershell 通过 Web 请求从序列中检索数字

标签 python powershell scripting new-webserviceproxy

我有一个非常具体的问题,一直在努力解决。我在镜像过程中使用 PowerShell 脚本来命名新镜像的计算机,并且我需要从序列中获取新生成的编号。我为此使用 SCCM 2012 R2,顺便说一句

例如,我有一个脚本,使用 wmi 查询按照我们的约定命名我们的计算机:

    if ($ComputerVersion  -eq "ThinkPad T400") 
{
$OSDComputerName = "T400xxxx-11"
$TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment
$TSEnv.Value("OSDComputerName") = "$OSDComputerName"
}

我使用 WMI 查询设置 $ComputerVersion 变量,如下所示:

$ComputerVersion = (Get-WmiObject -Class Win32_ComputerSystemProduct | Select-Object Version).Version

所以,我的问题的关键是我想设置另一个变量,可能很简单 就像 $num 一样,表示下一个可用于标记我们的计算机的数字。该数字将取代“xxxx”。我将通过以下方式做到这一点:

if ($ComputerVersion  -eq "ThinkPad T400") 
{
$OSDComputerName = "T400" + $num + "-11"
$TSEnv = New-Object -COMObject Microsoft.SMS.TSEnvironment
$TSEnv.Value("OSDComputerName") = "$OSDComputerName"
}

这个数字是由我们拥有的 Linux 服务器生成的,它已经运行了一些 python 脚本来给出序列中的下一个可用数字。如果需要,我可以发布该 python 脚本,但它有 133 行。

我需要知道的是如何通过 PowerShell 调用该 Web 请求,并将返回的数字(下一个可用的数字)设置为新变量。

我以前从未使用过网络服务或网络请求,任何帮助将不胜感激。提前致谢!

最佳答案

取决于网络请求返回的内容以及您是否需要处理任何返回数据,但如果它只是返回数字,您可以这样做:

$webClient = New-Object System.Net.WebClient
$num = $webClient.downloadstring("http://yourwebservice.com/buildnumber")

关于python - 使用 Powershell 通过 Web 请求从序列中检索数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23393687/

相关文章:

python - Bash 命令在 Python 中不起作用

powershell - 对 csv 文件进行排序并删除指定到列的旧行

azure - 在 Azure Powershell Runbook 中使用 "Parsed-HTML"时, "invoke-webrequest"字段为空

c - Hack C,调用脚本函数而不是 C 函数?

regex - 替补中的坏旗

python - 如何在 pandas 数据帧中选择最小值并保存我的字符串数据

python - 如何从用户获取文件路径然后传递给函数(argparse)

linux - Bash 脚本调用的已执行程序的跟踪

python - 销毁 tkinter 按钮

powershell - 为 powershell.exe 正确转义命令(从 CMD.exe 启动命令)