Mac怎么用log命令查看日志_Mac如何用终端log show过滤和查看系统日志【命令】

酷浩吖_8039

酷浩吖_8039

2026-04-05

865人浏览

原创

macos终端中精准提取系统日志需使用log命令,支持时间范围限定、进程/子系统筛选、关键词过滤、启动日志提取及格式化导出。

mac怎么用log命令查看日志_mac如何用终端log show过滤和查看系统日志【命令】

如果您需要在 macOS 终端中精准提取、过滤和查看系统日志,则必须依赖 Unified Logging 系统提供的 log 命令。该命令直接对接系统日志数据库,支持时间范围限定、进程名匹配、子系统筛选及关键词检索,适用于故障定位、行为审计与事件回溯等场景。

一、基础日志查看与时间范围限定

log show 是最常用的日志查询命令,可快速拉取指定时间窗口内的全部或部分日志条目,避免手动翻阅海量原始记录。

1、打开“终端”应用(可在“访达”→“应用程序”→“实用工具”中找到,或使用 Spotlight 搜索)。

2、执行命令查看过去一小时的全部日志:log show --last 1h。

3、查看最近24小时日志并以传统 syslog 格式输出:log show --last 24h --style syslog。

4、精确指定起止时间(格式为 YYYY-MM-DD HH:MM:SS,系统自动识别本地时区):log show --start "2026-04-05 09:00:00" --end "2026-04-05 11:30:00"。

二、关键词与消息内容过滤

通过 NSPredicate 表达式可对 eventMessage 字段进行大小写不敏感的全文匹配,高效定位错误、警告或特定操作痕迹。

1、筛选所有包含 “error” 的日志条目:log show --predicate 'eventMessage contains[c] "error"'。

2、同时匹配多个关键词(如 “fail” 或 “timeout”):log show --predicate 'eventMessage contains[c] "fail" OR eventMessage contains[c] "timeout"'。

3、排除调试类干扰信息,仅保留用户可见级日志:log show --predicate 'eventMessage contains[c] "crash" AND NOT (eventMessage contains[c] "debug" OR eventMessage contains[c] "info")'。

三、按进程名或子系统精准筛选

系统服务、内核模块及第三方应用均归属不同 subsystem 或 process 标识,通过限定这些字段可大幅缩小分析范围。

1、查看微信(WeChat)进程产生的全部日志:log show --predicate 'process == "WeChat"'。

Makefun
Makefun

Makefun是一款AI文本写作工具,无限制一站式 AI 视频生成平台。

下载

2、聚焦内容缓存服务(AssetCache)运行日志:log show --predicate 'subsystem == "com.apple.AssetCache"'。

3、提取 launchd 服务管理相关事件(如服务启动失败):log show --predicate 'subsystem == "com.apple.xpc.launchd"'。

4、查看内核层日志(含驱动加载、硬件检测):log show --predicate 'subsystem == "com.apple.kernel"'。

四、启动阶段日志专项提取

系统每次启动都会生成独立日志上下文,--last boot 参数可自动锚定至最近一次重启时刻,无需手动计算时间戳。

1、获取本次开机以来所有与启动相关的日志:log show --predicate 'eventMessage contains[c] "boot"' --last boot。

2、提取启动过程中 error 及以上等级的关键事件:log show --predicate 'eventMessage contains[c] "boot"' --last boot --level error。

3、完整还原启动流程(含内核初始化、launchd 加载、服务启动):log show --predicate 'senderImagePath contains "launchd" OR subsystem == "com.apple.kernel" OR process == "kernel"' --last boot --info --debug。

五、日志导出与格式化输出

将命令结果重定向至文件或调整显示样式,便于离线分析、协作排查或归档留存。

1、将过去7天日志保存为桌面文本文件:log show --last 7d > ~/Desktop/system_log_7days.txt。

2、以紧凑格式输出,每行一条日志,去除冗余字段:log show --last 30m --style compact。

3、仅显示时间戳、进程名与消息主体,适配快速扫描:log show --last 1h --style json | jq -r '.eventMessage, .process, .timestamp' 2>/dev/null(需已安装 jq 工具)。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

1995

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

2822

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

976

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3179

7

c语言中null和NULL的区别
c语言中null和NULL的区别

c语言中null和NULL的区别是:null是C语言中的一个宏定义,通常用来表示一个空指针,可以用于初始化指针变量,或者在条件语句中判断指针是否为空;NULL是C语言中的一个预定义常量,通常用来表示一个空值,用于表示一个空的指针、空的指针数组或者空的结构体指针。

2023.09.22

529

3

java中null的用法
java中null的用法

在Java中,null表示一个引用类型的变量不指向任何对象。可以将null赋值给任何引用类型的变量,包括类、接口、数组、字符串等。想了解更多null的相关内容,可以阅读本专题下面的文章。

2024.03.01

1658

6

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.18

909

5

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

2023.10.25

2520

5

macOS怎么切换用户账户
macOS怎么切换用户账户

在 macOS 系统中,可通过多种方式切换用户账户。如点击苹果图标选择 “系统偏好设置”,打开 “用户与群组” 进行切换;或启用快速用户切换功能,通过菜单栏或控制中心的账户名称切换;还能使用快捷键 “Control+Command+Q” 锁定屏幕后切换。

2025.05.09

3904

14

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
安装 Xdebug 并配置 phpstorm
安装 Xdebug 并配置 phpstorm

共1课时 | 181人学习

PostgreSQL 教程
PostgreSQL 教程

共48课时 | 20.2万人学习

好课诞生记
好课诞生记

共20课时 | 7.1万人学习