PowerShell 技能连载 - 格式化 DateTime
当您拥有一个真正的 DateTime
对象(比如不是字符串)时,您就拥有了许多强大的格式化功能。您可以直接获取一个 DateTime
对象:
1 | PS> $installDate = (Get-CimInstance -Class Win32_OperatingSystem).InstallDate |
或者您可以将一个字符串转换为一个 DateTime
对象:
1 | PS> $psconf = Get-Date -Date '2019-06-04 09:00' |
当您拥有一个 DateTime
对象时,请使用 ToString()
方法并提供一个或两个参数。
第一个参数决定您希望使用日期的哪些部分,并使用这些占位符(大小写敏感!):
y Year
M Month
d Day
H Hour
m Minute
s Second
f Millisecond
指定了越多占位符,就可以得到越多的细节:
1 | PS> (Get-Date).ToString('dd') |
(如您所见,PowerShell 使用的是缺省的语言,这个例子中使用的是德语)
要以 ISO 格式输出一个 DateTime
,请使用这段代码:
1 | PS> $installDate = (Get-CimInstance -Class Win32_OperatingSystem).InstallDate |
如果您也希望指定区域设置(语言),请在第二个参数指定 CultureInfo
:
1 | PS> (Get-Date).ToString('dddd', [System.Globalization.CultureInfo]'en-us') |
如果您想了解某个区域设置的区域代码,请试试这段代码:
1 | PS> [System.Globalization.CultureInfo]::GetCultures('Installed') | Out-GridView -PassThru |
PowerShell 技能连载 - 格式化 DateTime