Powershell脚本不处理所有行,但仅处理少数行

Powershell脚本不处理所有行,但仅处理少数行,powershell,Powershell,我正在编写powershell脚本,以将ASCII格式的SNMP OID输出转换为字符。我面临的问题是如何从文本文件中转换更多的行,而它只能处理很少的行。如果我添加更多的行,那么它只处理很少的行。我无法确定问题在我的脚本中的位置。寻找问题所在的指导 下面给出了Powershell脚本 $FileName = "C:\LBOIDOUTSORT.txt" if (Test-Path $FileName) { Remove-Item $FileName } Get-Content "C:\LBOI

我正在编写powershell脚本,以将ASCII格式的SNMP OID输出转换为字符。我面临的问题是如何从文本文件中转换更多的行,而它只能处理很少的行。如果我添加更多的行,那么它只处理很少的行。我无法确定问题在我的脚本中的位置。寻找问题所在的指导

下面给出了Powershell脚本

$FileName = "C:\LBOIDOUTSORT.txt"
if (Test-Path $FileName) {
  Remove-Item $FileName
}
Get-Content "C:\LBOIDOUT.txt"| Sort-Object | get-unique >> "C:\LBOIDOUTSORT.txt"
$RawData0 = Get-Content "C:\LBOIDOUTSORT.txt" -ReadCount 1000
$parentarray = @()
$parentarray += "URL Name,Server Name, IPAdress"
foreach ($RawDataline in $RawData0) {
    $rawinfo = $RawDataline  -replace ("ltmPoolMemberTable\.ltmPoolMemberEntry\.ltmPoolMemberAddr\.|%255255| OCTET STRING- \(ascii\): | ")
    $rawinfo = $rawinfo -split ':'
    $rawserverip = $rawinfo[1]
    $rawurlarray = $rawinfo[0] -split '\.'
    $temparray = @()
    foreach ($rawurlarrayvalue in $rawurlarray) {
        $oid = [int]$rawurlarrayvalue
        if (($oid -gt 44) -and ($oid -le 128)) {
            $oid = $oid
        }
        else {
            $oid = 32
        }
        $temparray += [char[]]$oid
    }
    $tempvalue = -join $temparray
    $childarray = $tempvalue -split '/'
    $servername = ($childarray[4] -replace " ")
    $urlserverip = ($childarray[2] -replace" ") + "," + $servername+","+$rawserverip
    $parentarray += $urlserverip
}
$parentarray 
脚本使用的文本文件内容示例

ltmPoolMemberTable.ltmPoolMemberEntry.ltmPoolMemberAddr.66.47.66.65.66.67.68.66.47.70.71.72.73.74.75.76.66.47.66.66.66.47.70.71.72.73.74.75.76:八位字符串-(ascii):10.0.255.9%255255 ltmPoolMemberTable.ltmPoolMemberEntry.ltmPoolMemberAddr.66.47.66.65.66.67.68.66.47.70.71.72.73.74.75.76.66.47.66.66.66.47.70.71.72.73.74.75.76:八位字符串-(ascii):10.0.255.9%255255 ltmPoolMemberTable.ltmPoolMemberEntry.ltmPoolMemberAddr.66.47.66.65.66.67.68.66.47.70.71.72.73.74.75.76.66.47.66.66.66.47.70.71.72.73.74.75.76:八位字符串-(ascii):10.0.255.9%255255 ltmPoolMemberTable.ltmPoolMemberEntry.ltmPoolMemberAddr.66.47.66.65.66.67.68.66.47.70.71.72.73.74.75.76.66.47.66.66.66.47.70.71.72.73.74.75.76:八位字符串-(ascii):10.0.255.9%255255 ltmPoolMemberTable.ltmPoolMemberEntry.ltmPoolMemberAddr.66.47.66.65.66.67.68.66.47.70.71.72.73.74.75.76.66.47.66.66.66.47.70.71.72.73.74.75.76:八位字符串-(ascii):10.0.255.9%255255

如果在文本文件中多次复制上述内容,则会出现问题

问候,,
Naresh

在从下面的行中删除-readcount参数后,我能够修复该问题

老一套

$RawData0 = Get-Content "C:\LBOIDOUTSORT.txt" -ReadCount 1000
修正线

$RawData0 = Get-Content "C:\LBOIDOUTSORT.txt"

这就解决了问题。

1.3.6.1.4.1.3375.2.2.5.3.2.1.3版的谷歌为您提供了所有信息。