Mac 命令行及 Linux 使用指南与示例

通用基础命令(Mac 和 Linux 均适用)

1. 文件与目录操作

命令 功能说明 示例
ls 列出目录内容 ls -al(显示所有文件,包括隐藏文件)
cd 切换目录 cd ~/Documents(进入用户文档目录)
pwd 显示当前目录路径 pwd
cp 复制文件或目录 cp file.txt backup/
mv 移动或重命名文件 mv old.txt new.txt
rm 删除文件或目录 rm -rf dir/(强制递归删除目录)
mkdir 创建目录 mkdir project
touch 创建空文件 touch newfile.txt

2. 文本操作与处理

命令 功能说明 示例
cat 查看文件内容 cat log.txt
grep 文本搜索 grep "error" /var/log/syslog
echo 输出内容或写入文件 echo "Hello" > hello.txt
nano / vim 文本编辑器 vim notes.md
head / tail 查看文件头/尾部内容 tail -f log.txt(实时追踪日志)

3. 系统信息与进程管理

命令 功能说明 示例
ps 查看进程信息 `ps aux
top / htop 实时监控系统资源 htop(需安装)
kill 终止进程 kill -9 1234(强制终止 PID 1234 的进程)
df / du 查看磁盘使用情况 df -h(以易读格式显示磁盘空间)
free 查看内存使用(Linux) free -m(显示内存以 MB 为单位)

Mac 特有命令与工具

1. 系统信息与管理

命令/工具 功能说明 示例
sw_vers 查看 macOS 版本 sw_vers -productVersion
system_profiler 查看硬件和系统信息 system_profiler SPHardwareDataType
open 用默认程序打开文件或目录 open .(在 Finder 中打开当前目录)
pbcopy / pbpaste 剪贴板操作 `cat file.txt

2. 包管理工具:Homebrew

bash 复制代码
# 安装 Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# 常用操作
brew install wget     # 安装软件
brew update           # 更新包列表
brew upgrade          # 升级所有已安装包
brew remove node      # 卸载软件

Linux 特有命令与工具

1. 包管理(Debian/Ubuntu)

bash 复制代码
# 更新与安装
sudo apt update        # 更新软件源
sudo apt install nginx # 安装软件
sudo apt remove nginx  # 卸载软件
sudo apt autoremove    # 清理无用依赖

# 查看已安装软件
apt list --installed

2. 系统服务管理(Systemd)

bash 复制代码
sudo systemctl start nginx    # 启动服务
sudo systemctl stop nginx     # 停止服务
sudo systemctl restart nginx  # 重启服务
sudo systemctl status nginx   # 查看服务状态

3. 网络工具

bash 复制代码
# 查看 IP 地址(Linux)
ip addr show

# 测试网络连通性
ping google.com

# 查看开放端口
netstat -tuln

Mac 与 Linux 的差异点

1. 命令参数差异

功能 Mac(BSD 风格) Linux(GNU 风格)
查看文件修改时间 ls -lT ls -l --time-style=full-iso
文本替换(sed) sed -i '' 's/old/new/g' file sed -i 's/old/new/g' file
计算 MD5 校验和 md5 file.txt md5sum file.txt

2. 文件系统路径差异

类型 Mac Linux
用户主目录 /Users/username /home/username
临时目录 /private/tmp /tmp
系统日志 /var/log/system.log /var/log/syslog

实用场景示例

1. 批量重命名文件

bash 复制代码
# Mac(需安装 rename)
brew install rename
rename 's/old/new/' *.txt

# Linux(使用 rename 或 mmv)
sudo apt install rename
rename 'old' 'new' *.txt

2. 查找文件

bash 复制代码
# 按名称查找
find ~/ -name "*.log"

# 按内容查找
grep -rn "error" /var/log/

3. 压缩与解压

bash 复制代码
# 压缩目录为 tar.gz
tar -czvf archive.tar.gz /path/to/dir

# 解压 tar.gz
tar -xzvf archive.tar.gz

# 压缩为 zip(Mac/Linux 通用)
zip -r archive.zip /path/to/dir

安全与权限管理

1. 修改文件权限

bash 复制代码
chmod 755 script.sh     # 设置权限为 rwxr-xr-x
chown user:group file   # 修改文件所有者和组

2. SSH 密钥管理

bash 复制代码
# 生成密钥对
ssh-keygen -t ed25519

# 将公钥复制到服务器
ssh-copy-id user@remote-server

开发环境配置

1. Python 虚拟环境

bash 复制代码
# 创建虚拟环境
python -m venv myenv

# 激活环境(Mac/Linux)
source myenv/bin/activate

2. Node.js 版本管理(nvm)

bash 复制代码
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash

# 安装 Node.js
nvm install 18
nvm use 18

注意事项

  1. 权限警告

    • 慎用 sudorm -rf,避免误删系统文件。
    • Mac 启用 SIP(系统完整性保护),部分系统目录不可修改。
  2. 脚本兼容性

    • 在 Mac 上使用 GNU 工具(如 gsedgrep)可提高与 Linux 的兼容性:

      bash 复制代码
      brew install coreutils findutils gnu-sed
  3. 日志与调试

    • 使用 journalctl(Linux)或 log show(Mac)查看系统日志。

通过掌握这些命令和示例,您可以高效操作 Mac 和 Linux 系统!遇到问题时,记得善用 man <命令> 查看手册(如 man ls)。

相关推荐
睡觉z19 分钟前
Haproxy搭建web群集
前端
codingandsleeping1 小时前
重读《你不知道的JavaScript》(上)- this
前端·javascript
guygg881 小时前
Linux中的阻塞信号与信号原理
linux·mysql·apache
眠りたいです2 小时前
MySQL基础与常用数据类型浅析
linux·数据库·mysql
孩子 你要相信光3 小时前
前端如何通过 Blob 下载 Excel 文件
前端·javascript
听风lighting3 小时前
1. C++ WebServer项目分享
linux·c语言·c++·设计模式·嵌入式·webserver
IT猫咪酱3 小时前
【前端】yarn install error
前端
喜欢打篮球的普通人3 小时前
Flang:LLVM Fortran 前端简介
前端
喵喵侠w3 小时前
腾讯地图Web版解决热力图被轮廓覆盖的问题
前端·javascript
chengf2233 小时前
WSL 安装使用和常用命令
linux