Appearance
概述
什么是 macOS?
macOS 是苹果公司开发的操作系统,专为 Mac 电脑设计。它基于 Unix,继承了 Unix 的稳定性和安全性,同时提供了优雅的图形用户界面。
macOS 的特点
1. Unix 基础
- 基于 BSD Unix
- 符合 POSIX 标准
- 原生支持命令行
2. 安全性高
- Gatekeeper 应用验证
- 系统完整性保护 (SIP)
- 沙盒机制
3. 开发者友好
- 内置开发工具
- 支持 Xcode
- 原生支持多种编程语言
4. 生态系统
- 与 iOS/iPadOS 无缝集成
- iCloud 同步
- AirDrop、Handoff 等功能
macOS 系统架构
┌─────────────────────────────────────┐
│ 应用层 │
│ (应用程序、App Store 应用) │
├─────────────────────────────────────┤
│ 框架层 │
│ (Cocoa、Carbon、Metal) │
├─────────────────────────────────────┤
│ Darwin 内核 │
│ (XNU 内核、BSD 用户态) │
├─────────────────────────────────────┤
│ 硬件抽象层 │
│ (I/O Kit、驱动程序) │
└─────────────────────────────────────┘macOS 版本
主流版本
| 版本 | 名称 | 发布年份 |
|---|---|---|
| macOS 14 | Sonoma | 2023 |
| macOS 13 | Ventura | 2022 |
| macOS 12 | Monterey | 2021 |
| macOS 11 | Big Sur | 2020 |
| macOS 10.15 | Catalina | 2019 |
终端
打开终端
- 方法一:
Command + 空格→ 输入Terminal - 方法二:Finder → 应用程序 → 实用工具 → 终端
- 方法三:Launchpad → 其他 → 终端
推荐终端应用
| 应用 | 特点 |
|---|---|
| Terminal.app | 系统自带 |
| iTerm2 | 功能强大、免费 |
| Alacritty | GPU 加速、跨平台 |
| Warp | 现代 AI 终端 |
Shell
macOS 默认使用 zsh 作为 Shell:
bash
echo $SHELL # 查看当前 Shell
cat /etc/shells # 查看可用 Shell
chsh -s /bin/bash # 切换到 bash
chsh -s /bin/zsh # 切换到 zsh终端快捷键
光标移动
| 快捷键 | 功能 |
|---|---|
| Ctrl + A | 移动到行首 |
| Ctrl + E | 移动到行尾 |
| Ctrl + B | 向左移动一个字符 |
| Ctrl + F | 向右移动一个字符 |
| Option + B | 向左移动一个单词 |
| Option + F | 向右移动一个单词 |
编辑操作
| 快捷键 | 功能 |
|---|---|
| Ctrl + U | 删除光标前所有内容 |
| Ctrl + K | 删除光标后所有内容 |
| Ctrl + W | 删除光标前一个单词 |
| Ctrl + Y | 粘贴删除的内容 |
| Ctrl + L | 清屏 |
历史命令
| 快捷键 | 功能 |
|---|---|
| Ctrl + R | 搜索历史命令 |
| Ctrl + P | 上一条命令 |
| Ctrl + N | 下一条命令 |
| !! | 执行上一条命令 |
| !n | 执行第 n 条历史命令 |
命令格式
基本格式
bash
command [options] [arguments]- command:命令名称
- options:选项,修改命令行为
- arguments:参数,命令操作对象
选项格式
bash
ls -l # 短选项
ls --all # 长选项
ls -la # 组合短选项
ls -l -a -h # 多个选项获取帮助
bash
man ls # 查看手册
ls --help # 查看帮助
info ls # 查看信息
tldr ls # 简化帮助(需安装)目录结构
标准目录
| 目录 | 说明 |
|---|---|
| / | 根目录 |
| /Applications | 应用程序 |
| /System | 系统文件 |
| /Library | 系统库 |
| /Users | 用户目录 |
| /usr | Unix 系统资源 |
| /bin | 基本命令 |
| /sbin | 系统命令 |
| /etc | 配置文件 |
| /var | 可变数据 |
| /tmp | 临时文件 |
| /dev | 设备文件 |
用户目录结构
/Users/用户名/
├── Desktop/ # 桌面
├── Documents/ # 文档
├── Downloads/ # 下载
├── Pictures/ # 图片
├── Music/ # 音乐
├── Movies/ # 视频
├── Applications/ # 用户应用
├── Library/ # 用户库
│ ├── Preferences/ # 偏好设置
│ ├── Application Support/ # 应用数据
│ └── Logs/ # 日志
└── Public/ # 公共文件夹macOS 特有命令
系统命令
bash
sw_vers # 查看 macOS 版本
system_profiler # 系统信息
system_profiler SPHardwareDataType # 硬件信息
softwareupdate --list # 列出可用更新
softwareupdate --install --all # 安装所有更新应用管理
bash
open -a "Safari" # 打开应用
open -a "Visual Studio Code" . # 用 VS Code 打开当前目录
open file.txt # 用默认程序打开文件
osascript -e 'quit app "Safari"' # 关闭应用剪贴板
bash
pbcopy < file.txt # 复制到剪贴板
pbpaste > file.txt # 从剪贴板粘贴
echo "Hello" | pbcopy # 复制字符串
pbpaste | grep "pattern" # 搜索剪贴板内容睡眠与关机
bash
sudo shutdown -h now # 立即关机
sudo shutdown -r now # 立即重启
sudo shutdown -h +60 # 60分钟后关机
pmset sleepnow # 立即睡眠
caffeinate -d # 防止显示器睡眠
caffeinate -i # 防止系统空闲睡眠环境变量
查看环境变量
bash
echo $PATH
echo $HOME
printenv # 显示所有环境变量
env # 同上设置环境变量
bash
export MYVAR="value" # 设置环境变量
export PATH="$PATH:/new/path" # 添加到 PATH持久化配置
在 ~/.zshrc 中添加:
bash
export PATH="$HOME/bin:$PATH"
export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home"应用配置:
bash
source ~/.zshrc下一步学习
现在你已经了解了 macOS 命令行的基础知识,可以继续学习: