例子

例子

我正在尝试尽可能地自动化我的电脑设置,我想知道是否可以通过命令行更改日期/时间格式。

如果是,我想知道该命令。

答案1

日期/时间格式被编码为地区。您可以通过 PowerShell 从 CLI 设置此项Set-Culturecmdlet。这是International自 Windows 8/Server 2012 起可用的模块。您基本上是在寻找与 GUI 控制面板区域小程序等效的东西(可以用 显示control /name Microsoft.RegionAndLanguage)。


例子

对于没有耐心的人来说,基本的 PowerShell 命令是:

$culture = Get-Culture
$culture.DateTimeFormat.ShortDatePattern = 'd/MM/yyyy'
Set-Culture $culture

我在底部列出了一些其他日期/时间模式,您可能希望修改它们。


细节

首先,如果您使用的是 Windows 8,则需要导入模块。在 Windows 10 上无需执行此操作。

Import-Module International

现在,如果您想更改整个区域,您只需一个命令即可完成,例如:

Set-Culture 'en-AU'

可以使用任何有效的BCP-47标记。请注意,这还会更改其他与区域相关的设置,例如小数点分隔符。

这是我大多数时候推荐的方法,除非您有其他特殊需求。


如果你想更具体地控制日期/时间格式,你需要构建自己的CultureInfo对象或者采用当前文化并进行修改:

$culture = Get-Culture
$culture.DateTimeFormat.ShortDatePattern = 'd/MM/yyyy'
Set-Culture $culture

相关日期/时间属性

只需运行$culture.DateTimeFormat(或Get-Culture.DateTimeFormat)即可查看现有选项的列表。您可能想要修改的选项包括:

FullDateTimePattern
LongDatePattern
LongTimePattern
ShortDatePattern
ShortTimePattern

我建议不要触碰 RFC1123 模式和可排序模式。

答案2

如果按照上述方法操作后Windows UI右下角日期格式没有变化,请在命令中输入如下命令。

reg add "HKCU\Control Panel\International" /v sShortDate /d "d/MM/yyyy" /f

相关内容