If I have:
Write-Host "[$(Get-Date -displayhint time)] backup starting..."
I get:
[02/17/2010 1:26:12pm] backup starting…
i. e. the Get-Date parameters are being ignored and is just returning the output of Get-Date.
What’s the best way to do inject the current time in the middle of a string?
thanks
Well, in this case you’re converting to a string because you are using the output in a string. The result of the Get-Date command is still a DateTime object. The display hint would then be honored by the Out-Host cmdlet.
You can use the
-Formatparameter to force a certain format in which case the cmdlet returns a string:(
"T"being the format string for the full time) which then looks like this: