Mac 好用的命令行工具总结
把一些可能用到的比较好用的工具总结到了这里。
使用 rsync 进行高效文件同步与恢复(macOS)
rsync 是 macOS 和 Linux 系统中常用的命令行文件同步工具,支持断点续传、增量复制、排除文件等功能,非常适合拷贝大文件或进行数据迁移。
一、基本语法
 | 
源路径和目标路径都可以是本地路径或远程路径(使用 SSH)。拷贝路径时注意 / 的使用影响结构,详见后文。
二、常用选项说明
| 选项 | 含义 | 
|---|---|
| -a | 归档模式(保留权限、时间戳、符号链接等) | 
| -v | 输出详细信息(verbose) | 
| -h | 以人类可读的方式显示大小(如 1K、20M) | 
| –progress | 显示每个文件的复制进度 | 
| –dry-run | 预演命令但不执行操作,适合拷贝前查看将会做什么 | 
| –delete | 删除目标路径中,源路径中已不存在的文件(谨慎使用) | 
| –update | 只复制源路径中比目标路径更新的文件 | 
| –exclude | 排除某些文件或目录,例如 .DS_Store | 
三、路径末尾 / 的含义
- 不加 /:拷贝整个目录,包括文件夹本身
 
 | 
- 加上 /:仅拷贝目录内的内容
 
 | 
建议源路径加 /,更符合我们拷贝“内容而不是文件夹”的直觉。
四、典型使用示例
复制整个目录并显示进度:
 | 
预演会复制哪些内容(不实际执行):
 | 
跳过 .DS_Store 文件:
 | 
完全同步(删除目标中多余的文件):
 | 
五、.DS_Store 是什么?应不应该拷贝?
.DS_Store 是 macOS 用来保存文件夹显示设置的隐藏文件,例如图标排列方式、排序顺序等。它对文件内容无任何影响,在备份或传输到非 Mac 系统时通常建议排除。
可用 --exclude=“.DS_Store” 选项避免拷贝此类文件。
六、输出信息的解释
在拷贝过程中,你可能会看到如下信息:
 | 
含义如下:
- xfer#6:当前第 6 个被复制的文件
 - to-check=60/399:还剩 60 个文件待检查,总共需检查 399 个
 
只要某个文件显示 100%,就表示该文件已完整复制。
七、总结
- rsync 是一个非常适合做备份、数据迁移和断点恢复的工具。
 - 可跳过已存在文件,提高效率。
 - 注意源路径 / 的使用决定结构层级。
 - 使用 --dry-run 可以避免误操作。
 - 对于 macOS,建议排除 .DS_Store 文件。
 
caffeinate 指令详解(macOS)
caffeinate 是 macOS 系统下用来防止系统睡眠的命令行工具。它可以保持系统、显示器、磁盘持续唤醒状态,常用于后台任务、模型训练、虚拟机运行等场景。
一句话说明
caffeinate 是 mac 上的“咖啡因”,让你的 Mac 保持清醒不睡觉。
常用语法
 | 
常用参数说明
| 参数 | 含义 | 示例 | 
|---|---|---|
-d | 
防止显示器休眠 | caffeinate -d | 
-i | 
防止系统因空闲进入休眠 | caffeinate -i | 
-m | 
防止磁盘挂起 | caffeinate -m | 
-s | 
防止系统睡眠(仅限接电源状态) | caffeinate -s | 
-t <秒> | 
指定保持唤醒的时间(单位为秒) | caffeinate -t 3600 | 
-u | 
模拟用户活动(让系统以为你动了鼠标) | caffeinate -u -t 10 | 
-w <PID> | 
跟随某个进程保持唤醒,进程结束后退出唤醒状态 | caffeinate -w 1234 | 
常见用法示例
1. 全面防止系统任何形式的睡眠
 | 
2. 简单防止系统休眠(默认保持唤醒)
 | 
3. 保持唤醒 1 小时
 | 
4. 只防止屏幕熄灭
 | 
5. 跟随某个程序保持唤醒
 | 
如何停止?
按下 Ctrl + C 或关闭运行 caffeinate 的终端窗口即可恢复正常休眠行为。
应用场景建议
| 场景 | 推荐命令 | 
|---|---|
| 下载大文件 / 备份 | caffeinate -i | 
| 深度学习 / 模型训练 | caffeinate | 
| 运行虚拟机 / NAS 后台服务 | caffeinate -d -i -m | 
| 视频播放保持亮屏 | caffeinate -d | 
| 限时唤醒(如跑脚本) | caffeinate -t 1800 | 
注意事项
caffeinate不会修改系统设置,只在运行期间生效。- 合盖是否睡眠还取决于系统设置和硬件支持(需借助工具如 InsomniaX 防盖板睡眠)。
 
All articles on this blog are licensed under CC BY-NC-SA 4.0 unless otherwise stated.
 Comments
GiscusUtterances