【问题标题】:Read Excel File with Powershell使用 Powershell 读取 Excel 文件
【发布时间】:2014-06-02 09:01:59
【问题描述】:

我有一个 Excel 服务器列表,其中 D 列是主机名,F 列是区域(例如 dev、int、prd)。现在我想用 powershell 读取这个 excelfile 并打印出每个具有区域 dev 的主机名。我必须改变什么?

$FilePath = "C:\serverlist.xlsx"
$SheetName = "serverlist"
$objExcel = New-Object -ComObject Excel.Application
$objExcel.Visible = $false
$WorkBook = $objExcel.Workbooks.Open($FilePath)
$WorkSheet = $WorkBook.sheets.item($SheetName)


$Range = $WorkSheet.Range("F2:F150").Text

Foreach ($cell in $Range) {

    If ($cell -like "dev") {

        Write-Host "hostname from  Column D"

    }

}

【问题讨论】:

    标签: excel powershell foreach


    【解决方案1】:

    将您的电子表格保存为 CSV,您将能够更快更快地处理列表。然后您可以使用以下代码,将-Header 之后的值更改为与您相关的列名:

    $FilePath = "C:\serverlist.csv"
    $serverList = Import-Csv $FilePath 
        -Header "ColumnA","ColumnB","ColumnC","HostName","Area"
    $serverList | where {$_.Area -like"dev" } | Select-Object HostName
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多