我想导入一个csv文件,并以管道分隔格式吐出列。Powershell传递字符串ForEach
Import-csv file.dat | foreach {($_.'Column1')+ "|" +($_.'Column2')+ "|" +($_.'Column3')}
这个伟大的工程,当我明确地传递的列值
($_.'ColumnX' + "|" $_.'ColumnY') etc.
我想传递的动态生成到的foreach组件变量的字符串。
我能够产生“串”,它看起来完全作为
"($_.'Column1')+ "|" +($_.'Column2')+ "|" +($_.'Column3')"
然而,PowerShell是治疗该生成的字符串作为一个单一的柱和第一列仅输出。
例如。
$columns = ($_.'Column1')+ "|" +($_.'Column2')+ "|" +($_.'Column3')
Import-csv file.dat | foreach {$columns}
任何建议如何获得在foreach部分下传递的列字符串,以便我得到正确的输出?
你只是试图将逗号转换为管道?为什么不使用'-replace'? –