在powershell中显示csv

时间:2012-12-20 19:37:30

标签: powershell csv

我创建了一个CSV,我正在尝试在其上运行Import-CSV命令。从我看过的例子中,数据以漂亮的表格格式显示。但是,我不能让我的数据看起来那样。如果我在Excel中打开它,一切都是它自己的单元块。以下是我的一些数据,如何显示以及我期待的内容:

数据:

Directory,Name,Length,CreationTime,LastWriteTime
\\foo\foofoo\nightly.188\share\name,name.pst,271360,6/4/2009 2:42:21 PM,6/9/2011 8:58:50 AM
\\foo\foofoo\nightly.188\share\name,name2.pst,71123968,10/5/2010 2:41:56 PM,8/1/2011 4:08:32 PM

数据输出:

Directory     : \\foo\foofoo\nightly.188\share\name
Name          : name.pst
Length        : 271360
CreationTime  : 6/4/2009 2:42:21 PM
LastWriteTime : 6/9/2011 8:58:50 AM

Directory     : \\foo\foofoo\nightly.188\share\name
Name          : name2.pst
Length        : 71123968
CreationTime  : 10/5/2010 2:41:56 PM
LastWriteTime : 8/1/2011 4:08:32 PM

我期待的是:

Directory                            Name        Length      CreationTime             LastWriteTime
\\foo\foofoo\nightly.188\share\name  name.pst    271360      6/4/2009 2:42:21 PM     8/1/2011 4:08:32 PM
\\foo\foofoo\nightly.188\share\name  name2.pst   71123968    10/5/2010 2:41:56 PM    8/1/2011 4:08:32 PM

3 个答案:

答案 0 :(得分:5)

您可以将Import-Csv的输出重定向到Format-Table

Import-Csv D:\temp\input.csv | Format-Table

答案 1 :(得分:4)

input.csv中的列数控制默认输出是Format-List还是Format-Table

 Import-Csv D:\temp\input.csv | Format-List 
 Import-Csv D:\temp\input.csv | Format-Table 
 Import-Csv D:\temp\input.csv

This link suggests Because the output contains more than 5 properties the default layout is courtesy of Format-List虽然使用了Import-Csv,但如果列数超过4列,则会出现这种情况。

我在文件中播放了窗口宽度和数据,看起来有4列是神奇数字。

答案 2 :(得分:0)

文件是否经过Unicode编码?如果是这样,在记事本中打开csv文件并将其保存为UTF-8,它应该可以解决您的问题。