Mac终端命令行怎么用?

打开终端:在启动台“实用工具”中找到,或通过Spotlight搜索(Command+空格),终端是Mac的文本操作界面,可执行命令管理文件系统、安装软件及自动化任务。

探索 Mac 的强大心脏:终端命令行使用指南

Mac终端命令行怎么用?

你的 Mac 不仅仅拥有优雅的界面,其真正的力量隐藏在名为“终端”的工具之中,终端(Terminal)是通往 macOS 底层 Unix 系统(基于 BSD)的命令行接口(CLI),你可以通过输入文本命令来完成各种任务,从简单的文件管理到复杂的系统配置、网络诊断、软件开发等,对于想要更高效、更深入地控制 Mac 掌握终端是提升技能的关键一步。

重要提示:

⚠️ 使用终端需要谨慎!
命令行拥有极高的权限。错误的命令可能导致数据丢失、系统不稳定甚至无法启动。 请务必:

  1. 理解命令的作用:在按下回车键之前,确保你知道这个命令是做什么的。
  2. 谨慎使用 sudosudo 命令让你以管理员(root)身份运行命令,拥有修改系统核心文件的能力。仅在必要时使用,并确保命令来源可靠且你完全理解其后果。
  3. 备份重要数据:在进行可能影响系统或重要文件的操作前,请务必备份你的数据(使用 Time Machine 或其他方式)。

本指南旨在提供安全、实用的入门知识,但操作风险需自行承担。

第一步:启动终端

在 Mac 上打开终端非常简单,有以下几种常用方法:

  1. 聚焦搜索 (Spotlight):按下键盘快捷键 Command (⌘) + 空格键,在出现的搜索框中输入“终端”或“Terminal”,然后按回车键,这是最快的方式。
  2. 应用程序文件夹:打开“访达” -> 进入“应用程序”文件夹 -> 找到“实用工具”文件夹 -> 双击打开“终端”应用。
  3. Launchpad:点击 Dock 上的 Launchpad 图标(火箭形状),在搜索栏输入“终端”,点击图标打开。

启动后,你会看到一个窗口,通常包含一个命令提示符,类似于:
yourusername@yourmac ~ %
(在较新的 macOS 版本中,默认 shell 是 zsh,提示符可能稍有不同,但功能类似)。

这里的 符号代表你的个人主目录(通常是 /Users/你的用户名),这是你启动终端时的默认位置。

核心概念:文件系统路径

  • 绝对路径:从根目录 开始的完整路径。/Users/yourusername/Documents/report.txt,无论你当前在哪个目录,绝对路径都能唯一指定一个文件或文件夹的位置。
  • 相对路径:相对于你当前工作目录的路径。
    • :代表当前目录(./file.txt 表示当前目录下的 file.txt)。
    • :代表上一级目录(父目录)。
    • :代表你的主目录(/Users/你的用户名)。
    • 如果你当前在 /Users/yourusernameDocuments/report.txt 就是一个相对路径,指向 /Users/yourusername/Documents/report.txt

基础导航与文件操作

掌握以下基本命令是使用终端的基石:

Mac终端命令行怎么用?

  1. pwd (Print Working Directory)

    • 作用:显示你当前所在的目录(工作目录)的完整绝对路径。
    • 示例pwd -> 输出 /Users/yourusername
  2. ls (List)

    • 作用:列出当前目录下的文件和文件夹。
    • 常用选项
      • ls -l:以详细列表格式显示(包含权限、所有者、大小、修改时间)。
      • ls -a:显示所有文件,包括隐藏文件(以 开头的文件,如 .bash_profile)。
      • ls -lh:以详细列表格式显示,并用易读的单位(K, M, G)显示文件大小 (-h 表示 human-readable)。
      • ls /path/to/directory:列出指定路径下的内容。
    • 示例ls -la ~/Documents -> 列出 Documents 文件夹下的所有文件(包括隐藏文件)的详细信息。
  3. cd (Change Directory)

    • 作用:切换当前工作目录。
    • 用法
      • cd /path/to/directory:切换到指定的绝对路径。
      • cd relative/path:切换到相对于当前目录的路径。
      • cdcd ~:直接回到你的主目录 (/Users/你的用户名)。
      • cd ..:切换到上一级目录(父目录)。
      • cd -:切换回你上一次所在的目录。
    • 示例
      • cd Documents -> 进入当前目录下的 Documents 子目录。
      • cd ../Downloads -> 进入与当前目录同级的 Downloads 目录。
      • cd /Volumes/ExternalDrive -> 进入挂载的外部驱动器(如果名为 ExternalDrive)。
  4. mkdir (Make Directory)

    • 作用:创建新的目录(文件夹)。
    • 用法mkdir directory_name
    • 示例mkdir Projects -> 在当前目录下创建名为 Projects 的文件夹。mkdir -p Parent/Child -> 创建嵌套目录 Parent 并在其中创建 Child (-p 确保父目录不存在时一并创建)。
  5. touch

    • 作用:主要用途是创建新的空文件,或者更新现有文件的访问和修改时间戳(如果文件已存在)。
    • 用法touch filename
    • 示例touch notes.txt -> 在当前目录创建(或更新)名为 notes.txt 的空文件。
  6. 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.docxreport_backup.docx(在同一目录)。
      • cp *.jpg ~/Pictures/ -> 将当前目录所有 .jpg 文件复制到 Pictures 目录。
      • cp -R OldProjects ~/Backups/ -> 将整个 OldProjects 文件夹复制到 Backups 目录。
  7. 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.mp4Downloads 移动到 Movies 目录。
  8. rm (Remove)

    • 作用删除文件或目录。极其危险!请务必确认路径无误!
    • 用法
      • rm filename:删除文件。
      • rm -i filename:删除前交互式确认 (-i 选项推荐给新手)。
      • rm -r directory_name递归删除整个目录及其所有内容(-r-R 必须用于目录)。极度危险!
      • rm -rf directory_name强制递归删除,不进行任何确认 (-f 表示 force)。超级危险!仅在绝对必要时使用,且必须百分百确定路径正确!
    • 重要警告rm -rf /rm -rf ~ 等命令会立即、不可逆地删除你整个系统或主目录的所有文件!永远不要尝试!
  9. cat (Concatenate)

    • 作用:在终端中显示文件的内容(适合查看较小的文本文件),也可以用于合并多个文件。
    • 用法cat filename
    • 示例cat ~/.zshrc -> 显示主目录下 .zshrc 配置文件的内容。
  10. less / more

    • 作用:分页查看文件内容(适合查看较大的文本文件),按 空格键 向下翻页,按 b 向上翻页,按 q 退出。lessmore 功能更强大(支持上下滚动、搜索等),是现代 macOS 上的首选。
    • 用法less filenamemore filename
    • 示例less /var/log/system.log -> 分页查看系统日志。
  11. man (Manual)

    Mac终端命令行怎么用?

    • 作用:查看命令的官方手册页(manual page),这是学习命令用法、选项和参数的最权威来源。遇到不熟悉的命令,第一反应应该是查 man
    • 用法man command_name
    • 示例man ls -> 查看 ls 命令的详细手册,在 man 页面中,使用方向键导航,按 q 退出。

权限管理:chmodsudo

  • 文件权限: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),先用 pstop 找到 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 命令列出所有历史记录。

安全与最佳实践总结

  1. 求知欲与谨慎并存:学习命令时,多用 man 查阅官方文档,对不熟悉的命令,特别是来自网络的,务必先理解再执行
  2. sudo 是双刃剑:仅在绝对需要管理员权限时使用,并确保命令来源可靠且你完全理解其作用,避免 sudo !!(以 sudo 重复上条命令)这种危险快捷方式。
  3. rm 是核武器:尤其是 rm -rf,删除前再三确认路径,考虑使用 -i 选项或先 mv 到临时目录。
  4. 备份!备份!备份! 在进行系统级修改或重要文件操作前,使用 Time Machine 或其他方式备份你的 Mac。
  5. 利用 Homebrew:优先使用 Homebrew 安装和管理命令行工具

原创文章,发布者:酷盾叔,转转请注明出处:https://www.kd.cn/ask/33285.html

(0)
酷盾叔的头像酷盾叔
上一篇 2025年6月21日 05:41
下一篇 2025年6月21日 05:44

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN