下面的脚本显示了当我尝试从FileInfo的输出中抑制Mode属性时会发生什么。我只对如何编写这个脚本感兴趣。我不希望每次获得文件列表时都必须指定格式。根据我的有限理解,第二个Get-Item c:\ Windows \ notepad.exe调用不应具有Mode属性。我试图用一个Process对象来理智地检查这个,但这更没意义。我没有在这个方法之前看到过于xml文件的东西,但看起来Mode属性甚至还没有。我不知道它来自哪里。谢谢!
脚本:
(Get-TypeData -TypeName System.IO.FileInfo).DefaultDisplayPropertySet.ReferencedProperties
Get-Item c:\Windows\notepad.exe | ft
Update-TypeData -Force -TypeName System.IO.FileInfo -DefaultDisplayPropertySet LastWriteTime,FileSize,Name
Update-TypeData -Force -TypeName System.IO.DirectoryInfo -DefaultDisplayPropertySet LastWriteTime,FileSize,Name
Update-TypeData -Force -TypeName System.IO.FileSystemInfo -DefaultDisplayPropertySet LastWriteTime,FileSize,Name
(Get-TypeData -TypeName System.IO.FileInfo).DefaultDisplayPropertySet.ReferencedProperties
Get-Item c:\Windows\notepad.exe | ft
输出:
Mode
LastWriteTime
FileSize
Name
Directory: C:\Windows
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 7/9/2015 12:13 PM 221184 notepad.exe
LastWriteTime
FileSize
Name
Directory: C:\Windows
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a--- 7/9/2015 12:13 PM 221184 notepad.exe