使用Import-Csv时出错

时间:2015-08-12 20:49:36

标签: windows powershell csv

我使用PowerShell导入CSV文件但出现此错误:
无法找到指定的文件。

文件名由系统性能计数器收集器自动生成。 “Oracle_Data_Provider_for_.NET(defaultdomain [10148,1])。csv”

如果我将文件重命名为“Oracle_Data_Provider_for_.NET(defaultdomain 10148,1).csv”,则文件正确打开。

PowerShell的版本是:

PS U:\> $PSVersionTable
Name                           Value               
----                           -----               
PSVersion                      4.0                 
WSManStackVersion              3.0                 
SerializationVersion           1.1.0.1             
CLRVersion                     4.0.30319.18444     
BuildVersion                   6.3.9600.16406      
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0}
PSRemotingProtocolVersion      2.2 

有关如何修复的建议吗?

1 个答案:

答案 0 :(得分:2)

方括号为wildcard characters。如果文件名中有文字方括号,则需要使用-LiteralPath参数:

  

<强> -LiteralPath&LT;字符串[]&GT;

     

指定要导入的CSV文件的路径。与路径不同, LiteralPath 参数的值与键入的值完全相同。没有字符被解释为通配符。如果路径包含转义字符,请将其用单引号括起来。单引号告诉Windows PowerShell不要将任何字符解释为转义序列。

示例:

Import-Csv -LiteralPath "Oracle_Data_Provider_for_.NET(defaultdomain [10148, 1]).csv"