如果我有:
Write-Host "[$(Get-Date -displayhint time)] backup starting..."
我明白了:
[02/17/2010 1:26:12pm] backup starting...
我。即Get-Date
参数被忽略,只返回Get-Date
的输出。
在字符串中间注入当前时间的最佳方法是什么?
感谢
答案 0 :(得分:8)
好吧,在这种情况下,您将转换为字符串,因为您在字符串中使用输出。 Get-Date命令的结果仍然是DateTime对象。然后,Out-Host cmdlet将显示提示符。
您可以使用-Format
参数强制使用某种格式,在这种情况下,cmdlet会返回一个字符串:
Get-Date -Format T
("T"
是全时的格式字符串),如下所示:
PS Home:\> Write-Host "[$(Get-Date -Format T)] backup starting..."
[19:35:12] backup starting...
答案 1 :(得分:0)
您还可以使用DateTime类的ToString()方法。我通常做这样的事情:
[PS] C:\>write-host "$((get-date).tostring('yyyy.MM.dd-HH:mm:ss'))"
2010.02.19-09:54:51