Mac终端命令行怎么用?
- 电脑教程
- 2025-06-21
- 4567
探索 Mac 的强大心脏:终端命令行使用指南
你的 Mac 不仅仅拥有优雅的界面,其真正的力量隐藏在名为“终端”的工具之中,终端(Terminal)是通往 macOS 底层 Unix 系统(基于 BSD)的命令行接口(CLI),你可以通过输入文本命令来完成各种任务,从简单的文件管理到复杂的系统配置、网络诊断、软件开发等,对于想要更高效、更深入地控制 Mac 掌握终端是提升技能的关键一步。
重要提示:
️ 使用终端需要谨慎!
命令行拥有极高的权限。错误的命令可能导致数据丢失、系统不稳定甚至无法启动。 请务必:
- 理解命令的作用:在按下回车键之前,确保你知道这个命令是做什么的。
- 谨慎使用
sudo:sudo命令让你以管理员(root)身份运行命令,拥有修改系统核心文件的能力。仅在必要时使用,并确保命令来源可靠且你完全理解其后果。- 备份重要数据:在进行可能影响系统或重要文件的操作前,请务必备份你的数据(使用 Time Machine 或其他方式)。
本指南旨在提供安全、实用的入门知识,但操作风险需自行承担。
第一步:启动终端
在 Mac 上打开终端非常简单,有以下几种常用方法:
- 聚焦搜索 (Spotlight):按下键盘快捷键 Command (⌘) + 空格键,在出现的搜索框中输入“终端”或“Terminal”,然后按回车键,这是最快的方式。
- 应用程序文件夹:打开“访达” -> 进入“应用程序”文件夹 -> 找到“实用工具”文件夹 -> 双击打开“终端”应用。
- Launchpad:点击 Dock 上的 Launchpad 图标(火箭形状),在搜索栏输入“终端”,点击图标打开。
启动后,你会看到一个窗口,通常包含一个命令提示符,类似于:yourusername@yourmac ~ %
(在较新的 macOS 版本中,默认 shell 是 zsh,提示符可能稍有不同,但功能类似)。
这里的 符号代表你的个人主目录(通常是 /Users/你的用户名),这是你启动终端时的默认位置。
核心概念:文件系统路径

- 绝对路径:从根目录 开始的完整路径。/Users/yourusername/Documents/report.txt,无论你当前在哪个目录,绝对路径都能唯一指定一个文件或文件夹的位置。
- 相对路径:相对于你当前工作目录的路径。 
  -  :代表当前目录(./file.txt表示当前目录下的file.txt)。
- :代表上一级目录(父目录)。
-  :代表你的主目录(/Users/你的用户名)。
- 如果你当前在 /Users/yourusername,Documents/report.txt就是一个相对路径,指向/Users/yourusername/Documents/report.txt。
 
-  :代表当前目录(
基础导航与文件操作
掌握以下基本命令是使用终端的基石:
-  pwd(Print Working Directory)- 作用:显示你当前所在的目录(工作目录)的完整绝对路径。
- 示例:pwd-> 输出/Users/yourusername
 
-  ls(List)- 作用:列出当前目录下的文件和文件夹。
- 常用选项: 
    - ls -l:以详细列表格式显示(包含权限、所有者、大小、修改时间)。
- ls -a:显示所有文件,包括隐藏文件(以 开头的文件,如- .bash_profile)。
- ls -lh:以详细列表格式显示,并用易读的单位(K, M, G)显示文件大小 (- -h表示 human-readable)。
- ls /path/to/directory:列出指定路径下的内容。
 
- 示例:ls -la ~/Documents-> 列出Documents文件夹下的所有文件(包括隐藏文件)的详细信息。
 
-  cd(Change Directory)- 作用:切换当前工作目录。
- 用法: 
    - cd /path/to/directory:切换到指定的绝对路径。
- cd relative/path:切换到相对于当前目录的路径。
- cd或- cd ~:直接回到你的主目录 (- /Users/你的用户名)。
- cd ..:切换到上一级目录(父目录)。
- cd -:切换回你上一次所在的目录。
 
- 示例: 
    - cd Documents-> 进入当前目录下的- Documents子目录。
- cd ../Downloads-> 进入与当前目录同级的- Downloads目录。
- cd /Volumes/ExternalDrive-> 进入挂载的外部驱动器(如果名为- ExternalDrive)。
 
 
-  mkdir(Make Directory)- 作用:创建新的目录(文件夹)。
- 用法:mkdir directory_name
- 示例:mkdir Projects-> 在当前目录下创建名为Projects的文件夹。mkdir -p Parent/Child-> 创建嵌套目录Parent并在其中创建Child(-p确保父目录不存在时一并创建)。
 
-  touch - 作用:主要用途是创建新的空文件,或者更新现有文件的访问和修改时间戳(如果文件已存在)。
- 用法:touch filename
- 示例:touch notes.txt-> 在当前目录创建(或更新)名为notes.txt的空文件。
 
-  cp(Copy)- 作用:复制文件或目录。
- 用法: 
    - cp source_file destination_file:复制文件并重命名(- destination_file与源不同名)。
- cp source_file /path/to/destination_directory/:复制文件到目标目录(保持原名)。
- cp -R source_directory /path/to/destination_directory/:递归复制整个目录及其内容 (- -R或- -r选项必须用于目录)。
 
- 示例: 
    - cp report.docx report_backup.docx-> 复制- report.docx为- report_backup.docx(在同一目录)。
- cp *.jpg ~/Pictures/-> 将当前目录所有- .jpg文件复制到- Pictures目录。
- cp -R OldProjects ~/Backups/-> 将整个- OldProjects文件夹复制到- Backups目录。
 
 
-  mv(Move)- 作用:移动文件或目录,或者重命名文件或目录(本质上是移动到同一路径下的新名字)。
- 用法:语法与 cp类似,但不需要-R来移动目录(mv本身就能移动目录)。- mv old_name new_name:重命名当前目录下的文件/目录。
- mv file /path/to/new/location/:移动文件到新位置(保持原名)。
- mv directory /path/to/new/location/:移动整个目录到新位置。
 
- 示例: 
    - mv draft.txt final_report.txt-> 将- draft.txt重命名为- final_report.txt。
- mv Downloads/vacation.mp4 Movies/-> 将- vacation.mp4从- Downloads移动到- Movies目录。
 
 
-  rm(Remove)- 作用:删除文件或目录。极其危险!请务必确认路径无误!
- 用法: 
    - rm filename:删除文件。
- rm -i filename:删除前交互式确认 (- -i选项推荐给新手)。
- rm -r directory_name:递归删除整个目录及其所有内容(- -r或- -R必须用于目录)。极度危险!
- rm -rf directory_name:强制递归删除,不进行任何确认 (- -f表示 force)。超级危险!仅在绝对必要时使用,且必须百分百确定路径正确!
 
- 重要警告:rm -rf /或rm -rf ~等命令会立即、不可逆地删除你整个系统或主目录的所有文件!永远不要尝试!
 
-  cat(Concatenate)- 作用:在终端中显示文件的内容(适合查看较小的文本文件),也可以用于合并多个文件。
- 用法:cat filename
- 示例:cat ~/.zshrc-> 显示主目录下.zshrc配置文件的内容。
 
-  less/more- 作用:分页查看文件内容(适合查看较大的文本文件),按 空格键向下翻页,按b向上翻页,按q退出。less比more功能更强大(支持上下滚动、搜索等),是现代 macOS 上的首选。
- 用法:less filename或more filename
- 示例:less /var/log/system.log-> 分页查看系统日志。
 
- 作用:分页查看文件内容(适合查看较大的文本文件),按 
-  man(Manual)- 作用:查看命令的官方手册页(manual page),这是学习命令用法、选项和参数的最权威来源。遇到不熟悉的命令,第一反应应该是查 man!
- 用法:man command_name
- 示例:man ls-> 查看ls命令的详细手册,在man页面中,使用方向键导航,按q退出。
 
- 作用:查看命令的官方手册页(manual page),这是学习命令用法、选项和参数的最权威来源。遇到不熟悉的命令,第一反应应该是查 
权限管理:chmod 和 sudo

-  文件权限:Unix 系统对文件/目录有三类权限(读 r、写w、执行x)和三组用户(所有者u、所属组g、其他用户o),使用ls -l可以看到权限(如-rw-r--r--)。
-  chmod(Change Mode):- 作用:修改文件或目录的权限。
- 用法:有多种方式,常用数字模式(八进制): 
    - chmod 755 filename:设置文件权限为- rwxr-xr-x(所有者:读/写/执行;组和其他:读/执行),常用于可执行脚本。
- chmod 644 filename:设置文件权限为- rw-r--r--(所有者:读/写;组和其他:只读),常用于普通文件。
 
- 示例:chmod +x myscript.sh-> 给myscript.sh添加所有用户的执行权限 (+x)。chmod 600 secret.txt-> 设置secret.txt只有所有者可读写 (rw-------)。
 
-  sudo(Super User DO):- 作用:以超级用户(root)权限执行后续的命令,用于执行需要管理员权限的操作(如安装系统级软件、修改系统配置文件)。
- 用法:sudo command,执行时,系统会提示你输入当前管理员用户的登录密码(输入时屏幕上不会显示任何字符,输完按回车)。
- 重要原则: 
    - 仅在必要时使用 sudo。
- 完全理解你将要执行的 sudo command的作用和潜在风险。
- 不要养成 sudo执行所有命令的习惯。
 
- 仅在必要时使用 
- 示例:sudo softwareupdate -i -a-> 以管理员权限安装所有可用更新。sudo nano /etc/hosts-> 以管理员权限用nano编辑器编辑系统hosts文件。
 
实用工具与进阶探索
掌握了基础命令后,你可以尝试更强大的工具:
- 文本编辑器: 
  - nano:简单易用的命令行文本编辑器,适合初学者快速编辑配置文件。- nano filename打开文件,屏幕底部有常用快捷键提示(如- ^O保存,- ^X退出)。
- vim/- vi:功能极其强大的老牌编辑器,学习曲线陡峭但效率极高。- vim filename打开文件,需要专门学习其模式(命令模式、插入模式)和快捷键。
 
- 进程管理: 
  - ps:查看当前运行的进程,常用- ps aux查看所有用户的详细进程信息。
- top/- htop(需安装):动态实时显示系统进程和资源占用情况(CPU、内存等),按- q退出。- htop是更直观的增强版(可通过- brew install htop安装)。
- kill:终止进程,需要知道进程 ID (PID),先用- ps或- top找到 PID,- kill PID,强制终止用- kill -9 PID。
 
- 网络诊断: 
  - ping:测试与目标主机(域名或 IP)的网络连通性。- ping google.com,按- Control+C停止。
- ifconfig:查看和配置网络接口信息(IP 地址、MAC 地址等)。
- netstat:显示网络连接、路由表、接口统计等信息,常用- netstat -an查看所有连接。
- curl:强大的命令行数据传输工具,用于下载文件、测试 API 等。- curl -O https://example.com/file.zip下载文件。
- ssh:通过安全的加密通道远程登录和管理其他计算机。- ssh username@remote_host。
 
- 软件包管理 – Homebrew (强烈推荐!): 
  - Homebrew 是 macOS 上最受欢迎的第三方包管理器,它可以让你轻松安装、更新和管理数千种命令行工具和桌面应用。
- 安装:访问 https://brew.sh 获取最新的一键安装命令(通常是一个 curl命令)。
- 基本用法: 
    - brew update:更新 Homebrew 自身。
- brew search keyword:搜索软件包。
- brew install package_name:安装软件包(如- brew install wget安装- wget下载工具)。
- brew upgrade package_name:升级特定软件包。
- brew upgrade:升级所有可升级的软件包。
- brew list:列出已安装的软件包。
- brew info package_name:查看软件包信息。
- brew uninstall package_name:卸载软件包。
 
 
- 版本控制 – Git: 
  - Git 是分布式版本控制系统,是软件开发的核心工具,macOS 通常预装了 Git。
- 基础命令:git init,git clone,git add,git commit,git push,git pull,git status,git log,需要系统学习。
 
提升效率:Shell 与环境
- Shell:终端运行的程序,负责解释和执行你输入的命令,macOS Catalina (10.15) 及以后版本,默认 shell 是 zsh(Z Shell),之前版本默认是bash(Bourne Again Shell),两者功能强大且相似,zsh在用户体验(如自动补全、主题)上更现代,你可以通过echo $SHELL查看当前 shell。
- Shell 配置文件:~/.zshrc(对于zsh) 或~/.bash_profile/~/.bashrc(对于bash),这些文件在 shell 启动时自动执行,用于设置环境变量 (PATH)、别名 (alias)、函数、提示符样式等,编辑这些文件可以个性化你的终端体验。
- PATH环境变量:这是一个非常重要的变量,它告诉 shell 去哪里查找你输入的命令对应的可执行程序,当你安装新命令行工具(如通过 Homebrew),通常需要将其安装路径(如- /usr/local/bin)添加到- PATH中(通常在 shell 配置文件中修改)。
- 别名 (alias):可以为常用命令创建简短的别名,在~/.zshrc中添加alias ll='ls -lah',之后输入ll就等同于输入ls -lah,编辑后需要运行source ~/.zshrc使更改生效,或新开一个终端窗口。
- 命令历史:按 (上箭头) 键可以快速调出之前执行过的命令。history命令列出所有历史记录。
安全与最佳实践总结
- 求知欲与谨慎并存:学习命令时,多用 man查阅官方文档,对不熟悉的命令,特别是来自网络的,务必先理解再执行。
- sudo是双刃剑:仅在绝对需要管理员权限时使用,并确保命令来源可靠且你完全理解其作用,避免- sudo !!(以 sudo 重复上条命令)这种危险快捷方式。
- rm是核武器:尤其是- rm -rf,删除前再三确认路径,考虑使用- -i选项或先- mv到临时目录。
- 备份!备份!备份! 在进行系统级修改或重要文件操作前,使用 Time Machine 或其他方式备份你的 Mac。
- 利用 Homebrew:优先使用 Homebrew 安装和管理命令行工具
 
  
			