每个语言/国家/地区的$ _。passwordLastset.AddDays(30)

时间:2018-07-27 13:24:15

标签: powershell

我快要结束我的项目了,但我正在寻求帮助。

由于$_.passwordLastset.AddDays(30)的返回像Friday, July 27, 2018 2:44:14 PM一样,我该如何格式化每种语言的日期。 我想以Vendredi 27 juillet a 14h44为例法国人。 我找到了formatdatetime,但找不到如何使用它。 vendredi =天 juillet =月

谢谢您的帮助。

4 个答案:

答案 0 :(得分:3)

而不是仅将[DateTime]传递到输出(这导致当前区域性中的默认格式)显式格式化。

$frfr = new-object System.Globalization.CultureInfo 'fr-fr'
[datetime]::Now.ToString($frfr)

如果您不想使用该区域性的默认格式,当然也可以传递format string

[datetime]::Now.ToString('F', $frfr)

答案 1 :(得分:0)

感谢所有,在您的帮助下我找到了方法,并分享了有用的链接https://www.reddit.com/r/PowerShell/comments/2comxz/how_to_adjust_the_datetime_readout_according_to/ 我会尽力为您带来回味

答案 2 :(得分:0)

除了@Richard的答案-您还可以使用LCID:

1030..1036 | % {
  $culture = [System.Globalization.CultureInfo]::GetCultureInfo($_)
  (Get-Date).ToString('F',$culture)
}

#output
27. juli 2018 16:01:45
Freitag, 27. Juli 2018 16:01:45
Παρασκευή, 27 Ιουλίου 2018 4:01:45 μμ
Friday, July 27, 2018 4:01:45 PM
viernes, 27 de julio de 2018 16:01:45
27. heinäkuuta 2018 16:01:45
vendredi 27 juillet 2018 16:01:45

答案 3 :(得分:0)

我将以此编码这个问题。 我写了一个函数,您可以将其用作脚本。

功能代码($ code) https://docs.microsoft.com/en-us/previous-versions/windows/embedded/ms912047(v=winembedded.10)     {

run()
我的电子邮件中的

$ expire将替换为完整日期。

我可以肯定的很好。 太酷了。

感谢大家的帮助,这是一个很棒的社区。