Powershell 使用addhours()时格式化日期时出错

Powershell 使用addhours()时格式化日期时出错,powershell,powershell-2.0,Powershell,Powershell 2.0,我正在使用Powershell v2为日期添加小时数,但总是出现错误 以下代码可以正常工作: $date = Get-Date -format "yyyyMMddhhmmss" $DateStr ='{0:yyyyMMddhhmmss}' -f $Date Write-Host $date 但是当我使用addhours()时: 我得到一个错误: 必须在“-f”运算符的右侧提供值表达式 有一种更简单的方法可以得到你想要的东西。查看示例和一般有用的信息 (Get-Date).ToStrin

我正在使用Powershell v2为日期添加小时数,但总是出现错误

以下代码可以正常工作:

 $date = Get-Date -format "yyyyMMddhhmmss"
 $DateStr ='{0:yyyyMMddhhmmss}' -f $Date
 Write-Host  $date
但是当我使用
addhours()
时:

我得到一个错误:

必须在“-f”运算符的右侧提供值表达式


有一种更简单的方法可以得到你想要的东西。查看示例和一般有用的信息

(Get-Date).ToString("yyyyMMddhhmmss")

$((Get-Date).AddHours(1)).ToString("yyyyMMddhhmmss")

有一种更简单的方法可以得到你想要的东西。查看示例和一般有用的信息

(Get-Date).ToString("yyyyMMddhhmmss")

$((Get-Date).AddHours(1)).ToString("yyyyMMddhhmmss")

你为什么不升级你的Powershell版本?PS v2非常古老,您会发现较新版本有一些您所缺乏的有用功能。我认为这是我公司的规定,稍后我会尝试说服我的公司,谢谢您的推荐。您不升级Powershell版本的原因是什么?PS v2很古老,你会发现新版本有一些你所缺乏的有用功能。我认为这是我的公司规则,我稍后会尝试说服我的公司,谢谢你的建议我以前使用tostring,但出现了错误、过载或一些我忘记的东西,所以我认为PS v2不支持这一点,我采取了不同的方法,感谢兄弟,它可以工作:)我以前使用tostring,但出现了错误、过载或一些我忘记的情况,所以我认为ps 2版不支持这一点,我采取了不同的方法,感谢兄弟,它可以工作:)