将变量切换为多个字符串

时间:2017-02-01 11:54:33

标签: string powershell variables powershell-v4.0

我想编写一个重命名Server 2012 R2上所有NIC的脚本。 目前每个人看起来都是这样的:

  sample_queue = sample_channel.queue('sample.queue')

现在我想将它用于不同的服务器,因此我必须从变量中获取$NIC = Get-WMIObject -Class Win32_NetworkAdapter -Filter "NetconnectionID='Embedded LOM 1 Port 1'" $NIC.NetconnectionID = 'Physical 1' $NIC.Put()

到目前为止,我已将NIC放入变量:

NetconnectionID

现在,当发出命令$NICS = Get-NetAdapter | select name 时,它会显示名称列表,但由于我想重命名我有多个NIC,我必须将变量分解为不同的字符串。如果它甚至会计算金额,然后用$NICS语句或if语句实现我的脚本,那将是非常棒的!

但是现在我会很高兴找到一个重命名特定金额的解决方案(在我的情况下是四个)。

2 个答案:

答案 0 :(得分:0)

$NICS = Get-NetAdapter | select name

for ($i = 0; $i -lt $NICS.Count; $i++) {
    Write-Host (($NICS[$i]) -replace("@{name=","") -replace("}",""))
}

我认为这是一个很好的起点。

答案 1 :(得分:0)

使用foreach:

$NICS = Get-NetAdapter | select name
foreach ($n in $nics)
{
   write-host  "Nick name " $n.name
}