【问题标题】:Close open CSV before writing data back to it. Powershell在将数据写回之前关闭打开的 CSV。电源外壳
【发布时间】:2020-06-05 15:20:14
【问题描述】:

我有一个这样的 csv 文件:

$csv = Import-Csv "C:\data.csv"

后面是格式化 csv 数据的代码。

当我写入文件时

$csv | Export-Csv -path "C:\data.csv" -NoType

如果文件打开,我会得到(可以预见的)

**Export-Csv : The process cannot access the file 'C:\data.csv' because it is being used by another process.**

在与脚本交互时,有时文件可能已保存但仍保持打开状态。我想有效地检查打开的文件并关闭它,以便我可以将数据写回同一个文件/变量。

【问题讨论】:

  • 我投票结束这个问题,因为 OP 在 Excel 中打开了添加块的文件。与 Import 或 Export-Csv 无关。

标签: powershell csv export-to-csv


【解决方案1】:

理想情况下,Powershell 不会像关闭文件那样自动处理文件。下面的代码对我有用

$csv = Import-Csv "C:\data.csv"
$csv | Export-Csv -path "C:\data.csv" -NoType

【讨论】:

  • 抱歉忘记添加在 Excel 中打开的文件。在记事本++中打开时,我没有问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-19
  • 2020-05-02
  • 1970-01-01
  • 1970-01-01
  • 2013-08-30
  • 1970-01-01
相关资源
最近更新 更多