【问题标题】:Powershell or C#: Copy files from one location to another using csv dataPowershell 或 C#:使用 csv 数据将文件从一个位置复制到另一个位置
【发布时间】:2020-09-23 22:52:03
【问题描述】:

我有一个包含 2 列的 csv。第一列是我要复制的文件的路径和文件名。第二列是目标路径。

我想创建一个脚本来解析 csv 并在 C# 中的 foreach 循环中复制文件,但我认为 Powershell 可能是完成此任务的最简单和最有效的方法。

我应该在 C# 脚本中加载 csv,然后创建一个加载源和目标的 foreach 循环,然后完成复制,还是在 Powershell 中使用简单的单行代码能够更快地完成此操作?

【问题讨论】:

    标签: c# powershell


    【解决方案1】:

    部分答案在这里:https://social.technet.microsoft.com/Forums/office/en-US/aa20cabb-3196-472d-9594-aaa0ec10fa03/powershell-read-csv-file-line-by-line-and-only-first-header?forum=winserverpowershell

    如果您的 csv 文件有标题,我会使用 powershell,因为这很容易。但是如果不是 C#,或者如果你想要一些更难的过程(在复制之前检查文件是否存在)

    【讨论】:

    • 明白了。感谢您的资源。我更熟悉 c# 并且基于 csv 的文件大小,我想我可能会走那条路。
    【解决方案2】:

    与 c# 相比,Powershell 比处理这个要容易得多。 C# 会更快,尤其是当您需要使用线程时。

    所以最后,这取决于您的要求。如果您不需要处理大量数据,我会推荐使用 powershell。

    但是如果你对c#很熟悉,也可以用c#来做

    【讨论】:

    • csv 文件非常大,所以我想我最终可能会走 c# 路线。谢谢
    • 如果 csv 非常大,内部的 powershell 会变得非常慢。顺便说一句,.net readalllines 类也是如此。在这种情况下,请使用 powershell 和 c# 中可用的 filestreamer 类
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-01-30
    • 2013-05-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多