powershell get-itemproperty得到正确的价值

时间:2014-01-14 12:23:37

标签: datetime powershell properties

我使用以下代码在c:\

上获取psexec.exe的创建时间
Get-ItemProperty -path c:\psexec.exe | select -property CreationTime

但我只需要价值,比如“14.01.2013 16:02:53”。 输出结果如下:

 
CreationTime
------------
14.01.2013 16:02:53
 
 

当然,我可以修剪它,就像删除前3行和最后2行或循环通过它,但我不想要这个解决方法。我假设有一种方法可以输出单个值,而不需要其他任何东西。 我可以用

Get-ItemProperty -path c:\psexec.exe | select -expandProperty CreationTime

但是这给了我:

 
Montag, 14. Januar 2013 16:02:53
 
 

所以我也有空行并且我想将此日期与之后的另一个日期进行比较,我认为第一个代码行将创建时间更多地带到了日期时间格式的字符串,因此以后更容易使用它。 / p>

任何人都可以帮我吗?我现在搜索谷歌的hrours,但没有找到任何有用的东西:/

祝你好运 黑莲花

2 个答案:

答案 0 :(得分:3)

将整个命令括在括号中,并使用点符号访问属性。

(Get-ItemProperty -path c:\psexec.exe | select -property CreationTime).CreationTime;

或者您甚至可以这样做:

(Get-ItemProperty -path c:\psexec.exe).CreationTime;

答案 1 :(得分:1)

将您的上一个命令管道移至Get-Member会显示TypeName: System.DateTime。这是Get-Date返回的相同对象类型,如果已经熟悉的话。该对象具有DateTime属性。所以这剥去了空白区域:

Get-ItemProperty -path c:\psexec.exe | select -expand CreationTime | select -expand datetime

这也是:

((Get-ItemProperty -path C:\psexec.exe).CreationTime).DateTime

你也可以找到一些methods,就像(get-date).ToLongDateString()一样。