欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

macos 获取时区 AG chatgpt 有大用

在 macOS 上获取时区信息可以通过终端命令、系统设置或编程方式实现。以下是几种常用方法:


1. 查看当前系统时区

终端命令

bash
systemsetup -gettimezone

示例输出:
Time Zone: Asia/Shanghai

(需管理员权限,若未启用会提示输入密码)

替代命令(无需管理员权限)

bash
ls -l /etc/localtime

输出示例:
/etc/localtime -> /usr/share/zoneinfo/Asia/Shanghai
(此时区链接文件指向实际时区配置)


2. 获取所有可用时区列表

bash
systemsetup -listtimezones

bash
timedatectl list-timezones  # 需安装`systemd`(通常Linux支持,macOS可能需要Homebrew)

3. 通过环境变量获取

macOS 的当前时区通常由 TZ 环境变量或系统设置决定:

bash
echo $TZ

(如果未设置,输出为空,默认使用系统时区)


4. 编程方式获取(Python示例)

python
import time import datetime # 方法1:系统时区偏移 print(time.timezone)  # 秒级偏移(UTC+8 -> -28800秒) # 方法2:时区名称 print(datetime.datetime.now().astimezone().tzinfo)

5. 通过 timedatectl (需安装)

若通过 Homebrew 安装 systemd 后可用:

bash
brew install systemd timedatectl show --property=Timezone

6. 系统偏好设置

手动查看路径:
系统设置 > 通用 > 日期与时间 > 解锁后选择时区。


注意事项

  • macOS 的时区文件位于 /usr/share/zoneinfo/ 目录下。

  • 修改时区需管理员权限,例如:

    bash
    sudo systemsetup -settimezone America/New_York

如果需要进一步解析时区信息(如 GMT 偏移量),可以结合 date 命令:

bash
date +"%Z %z"

输出示例:
CST +0800 (中国标准时间,UTC+8)

希望对你有帮助!


普通分类: