powershell - Powershell导入csv,其中列数据与txt文件中的数据匹配
问题描述
我有一个名为 CompanyName 的 csv 文件。在 csv 中有大量的行和不同的公司名称。但是我与需要检索其数据的特定公司保存了一个文本文件。通过 PowerShell 有一种方法可以通过 txt 文件进行 Where-Object 检查。就像是:
Import-Csv -Path myCSV | Where-Object { $_.'CompanyName' -in names.txt}
以上实际上是行不通的。我什至将文本文件中的名称放入一个数组中并尝试像这样进行检查,但它也不起作用。
$arr = [string[]]$arrayFromFile = Get-Content -Path "names.txt"
Import-Csv -Path myCSV | Where-Object {$_.'CompanyName' -in $arr }
解决方案
您的代码对我有用,只需要对该Get-Content
部分进行少量编辑。
无需转换为字符串数组,但如果您想具体说明类型就可以了。
它应该看起来像这样-
[string[]]$arr = Get-Content -Path "names.txt"
没有类型转换的整个事情。您需要文件夹中的 names.txt 和 mycsv.csv,或者使用完整路径。
$arr = Get-Content -Path "names.txt"
Import-Csv -Path "myCSV.csv" | Where-Object {$_.CompanyName -in $arr }
推荐阅读
- sql-server - 如何在一个更新语句中填写 ParentID 列?
- java - 我想使用 Java 将链接 ID 分配给具有特定站点 ID 的公交车站
- swift - Swift:如何在导航控制器之后访问第二个视图?
- sql - 在oracle中的表中插入数据时如何避免空格
- c++ - 双向数组作为函数返回
- mysql - 查询以获取与特定用户的每个联系人的最后一次对话
- php - laravel 模型修改器不访问定义的字段
- android - 华为 P40 Pro (ELS-NX9) 上的 INSTALL_FAILED_ABORTED 错误
- javascript - 如何在 JavaScript 中制作修改后的计数器动画?
- github-actions - Actions 选项卡仅显示在主分支的 /.github/workflows/ 中创建的工作流