基础入门
在开始之前,你需要知道如何打开终端:

- 方法一:按
Command (⌘) + 空格键打开聚焦搜索,输入Terminal或终端,然后按回车。 - 方法二:在
应用程序->实用工具文件夹中找到终端。
文件和目录操作
这是最基础也是最常用的操作,类似于在Finder中管理文件和文件夹。
| 命令 | 全称 | 作用 | 示例 |
|---|---|---|---|
ls |
list | 列出当前目录下的文件和文件夹。 | ls (列出)ls -l (以长格式列出,显示权限、大小等详细信息)ls -a (显示所有文件,包括隐藏文件,以开头的文件) |
cd |
change directory | 切换当前工作目录。 | cd /Users/YourName (切换到指定路径)cd ~ (切换到用户主目录,等同于 cd)cd .. (返回上一级目录)cd - (返回上一次所在的目录) |
pwd |
print working directory | 打印当前所在的完整路径。 | pwd (输出类似 /Users/YourName/Documents) |
mkdir |
make directory | 创建一个新的目录。 | mkdir NewFolder (在当前位置创建 NewFolder 文件夹)mkdir -p Parent/Child (创建多级目录,-p会自动创建不存在的父目录) |
touch |
- | 创建一个新文件,或更新一个已存在文件的时间戳。 | touch newfile.txt (创建一个名为 newfile.txt 的空文件) |
cp |
copy | 复制文件或目录。 | cp source.txt dest.txt (复制文件)cp -r source_folder/ dest_folder/ (-r是必须的,用于递归复制整个目录) |
mv |
move | 移动文件或目录,也用于重命名。 | mv old_name.txt new_name.txt (重命名文件)mv file.txt ../Documents/ (将文件移动到上一级的 Documents 目录) |
rm |
remove | 删除文件或目录。⚠️ 警告:此命令删除的文件无法通过回收站恢复! | rm unwanted_file.txt (删除文件)rm -r unwanted_folder/ (-r是必须的,用于递归删除整个目录)rm -rf unwanted_folder/ (-rf强制删除,慎用!,即使目录为空或只读也会删除) |
open |
- | 用默认程序打开文件或目录。 | open . (在Finder中打开当前目录)open picture.jpg (用默认图片查看器打开图片)open -a "TextEdit" notes.txt (用指定的“文本编辑”应用打开文件) |
文件内容查看
当你需要查看文件内容时,以下命令非常有用。
| 命令 | 全称 | 作用 | 示例 |
|---|---|---|---|
cat |
concatenate | 显示整个文件的内容,适合查看小文件。 | cat config.ini (显示 config.ini 的全部内容) |
less |
- | 分页显示,适合查看大文件,可以上下滚动,按 q 退出。 |
less very_long_log.txt |
head |
- | 显示文件的开头部分(默认10行)。 | head -n 20 access.log (显示 access.log 的前20行) |
tail |
- | 显示文件的结尾部分(默认10行)。对于监控日志非常重要! | tail -f server.log (-f表示实时跟踪,当文件有新内容追加时,会自动显示在终端,常用于监控) |
grep |
global regular expression print | 在文件中搜索匹配的文本行。 | grep "error" log.txt (在 log.txt 中搜索包含 "error" 的行)grep -i "ERROR" log.txt (-i表示忽略大小写)grep -r "TODO" . (-r表示递归搜索当前目录及其子目录下的所有文件) |
系统信息与管理
这些命令可以帮助你了解系统状态和进行管理。
| 命令 | 作用 | 示例 |
|---|---|---|
top |
实时显示系统中运行的进程和资源占用情况(CPU、内存),按 q 退出。 |
top |
htop |
top 的增强版,界面更友好,操作更直观,需要先安装 (brew install htop)。 |
htop |
df |
disk free | 显示文件系统的磁盘空间使用情况。 |
du |
disk usage | 显示指定目录或文件的磁盘使用量。 |
ps |
process status | 显示当前运行的进程。 |
kill |
- | 终止一个正在运行的进程,需要知道进程ID (PID)。 |
clear |
- | 清空终端屏幕。 |
history |
- | 显示你之前输入过的命令历史。 |
网络相关命令
用于检查网络连接、诊断网络问题。

| 命令 | 全称 | 作用 | 示例 |
|---|---|---|---|
ping |
- | 测试与另一台计算机的网络连接。 | ping google.com |
ifconfig |
interface configure | 显示或配置网络接口信息,在较新的macOS版本中,推荐使用 ipconfig。 |
ifconfig (查看所有网络接口信息) |
ipconfig |
- | macOS 10.15+ 推荐使用,用于管理网络配置。 | ipconfig getifaddr en0 (获取指定网络接口的IP地址,如 en0 是通常的有线网卡) |
curl |
client URL | 一个强大的命令行工具,用于传输数据,常用于发送HTTP请求、下载文件等。 | curl https://www.apple.com (获取苹果官网的HTML代码)curl -o latest.zip https://example.com/latest.zip (-o表示将输出保存到文件,下载文件) |
ssh |
secure shell | 安全地登录到远程计算机。 | ssh your_username@remote_host_ip |
高级与实用技巧
权限管理
macOS的文件有读、写、执行权限。
chmod(change mode): 修改文件或目录的权限。chmod +x script.sh(给script.sh添加可执行权限,使其可以运行)chmod 755 my_folder(设置my_folder的权限为rwxr-xr-x)
查找文件
-
find: 在指定目录及其子目录中查找文件。find . -name "*.jpg"(在当前目录下查找所有以.jpg结尾的文件)find /Users -name "MyReport.docx" -type f(在/Users目录下查找名为MyReport.docx的文件)
-
mdfind(macOS专属): 使用 Spotlight 搜索引擎快速查找文件。mdfind -name "presentation"(查找名称中包含 "presentation" 的文件)
压缩与解压
zip: 创建.zip压缩文件。zip -r archive.zip folder_to_compress/(将文件夹递归地压缩为archive.zip)
unzip: 解压.zip文件。unzip archive.zip
tar: 创建或解压.tar,.tar.gz,.tar.bz2等格式的文件。tar -czvf archive.tar.gz folder_to_compress/(创建一个gzip压缩的tar包)tar -xzvf archive.tar.gz(解压一个gzip压缩的tar包)
必备技巧
-
Tab 自动补全 在输入命令、文件名或目录名时,按
Tab键可以自动补全,如果按一次后有多个匹配,再按一次Tab会列出所有选项,这是最高效的技巧之一!
(图片来源网络,侵删) -
命令行编辑
Ctrl + A: 移动到行首。Ctrl + E: 移动到行尾。Ctrl + K: 删除从光标到行尾的所有内容。Ctrl + U: 删除整行。Ctrl + C: 中断当前正在执行的命令。Ctrl + D: 输入文件结束符,相当于exit退出shell。
-
管道 和重定向
>>>- 管道 : 将一个命令的输出作为另一个命令的输入。
cat large_file.log | grep "ERROR"(先显示large_file.log的内容,然后通过管道传递给grep,只显示包含 "ERROR" 的行)
- 重定向
>: 将命令的输出覆盖写入到一个文件。ls -l > file_list.txt(将ls -l的结果保存到file_list.txt,如果文件已存在则覆盖)
- 重定向
>>: 将命令的输出追加到一个文件的末尾。echo "New log entry" >> app.log(将 "New log entry" 追加到app.log文件的末尾)
- 管道 : 将一个命令的输出作为另一个命令的输入。
获取帮助
几乎每个命令都内置了帮助手册,当你不确定如何使用一个命令时:
man <command>: 显示该命令的手册页。man ls(查看ls命令的详细用法说明)- 按
q键退出手册页。
<command> --help: 很多命令也支持--help参数来显示简要用法。grep --help
希望这份详细的指南能帮助你快速上手macOS终端!多加练习,你会发现它比图形界面更强大、更灵活。
