【问题标题】:Powershell: Comparing 2 CSVs and adding from 1 to the other, without duplicatingPowershell:比较 2 个 CSV 并从 1 个添加到另一个,不重复
【发布时间】:2017-10-31 14:29:20
【问题描述】:

我有一个关于从一个 CSV 复制到另一个而不创建重复项的问题。我想到了。请参阅下面接受的答案。

谢谢。

【问题讨论】:

  • 你试过那个脚本了吗?您是否收到任何错误或不需要的结果?也许您可以使用嵌套的 foreach 实现某些目标,但是当我不知道您尝试了什么时,这很难提供帮助。 vladsitblog.com/compare-two-csv-files-via-powershell
  • @manu 显然不够

标签: powershell csv duplicates copy compare


【解决方案1】:

然而,答案很简单:

@(get-content .\masterlist.csv) + @(get-content .\update.csv) | Select -Unique | Out-File .\masterlist.csv

【讨论】:

  • 嘿,谢谢.. 我整理了一些类似的东西,但我从未使用过@+@ 的格式,你能解释一下吗?显然我不是 CS 专业的(我的其他帖子显示我不只是要求脚本)所以我很惊讶如此简单的请求却遭到如此强烈的反对。如果我写这样的脚本得到报酬...... O_o
  • just (get-content .\masterlist.csv) + (get-content .\update.csv) 可能也可以工作,但只是为了确定.cvs 文件中是否只有一个值,将其转换为数组,您可以使用 @ 将其强制为数组987654325@。加号 (+) 附加两个数组,Select -Unique 删除双条目。
【解决方案2】:

这就是我想出的(将唯一的从更新添加到主控,然后检查主控是否有重复项):

$updatefile = 'C:\path\to\file\update.csv'
$masterlist = 'C:\path\to\file\masterlist.csv'


get-content $updatefile | Select -Unique | add-content $masterlist 

(Get-Content $masterlist | Group-Object | %{$_.group | select -First 1}) | Out-File $masterlist -encoding ASCII

【讨论】:

    猜你喜欢
    • 2017-03-13
    • 1970-01-01
    • 1970-01-01
    • 2021-12-05
    • 1970-01-01
    • 1970-01-01
    • 2021-09-23
    • 2017-05-20
    • 2021-11-09
    相关资源
    最近更新 更多