通用基础命令(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 | grep chrome |
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 | pbcopy (复制文件内容到剪贴板) |
2. 包管理工具:Homebrew
# 安装 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)
# 更新与安装
sudo apt update # 更新软件源
sudo apt install nginx # 安装软件
sudo apt remove nginx # 卸载软件
sudo apt autoremove # 清理无用依赖
# 查看已安装软件
apt list --installed
2. 系统服务管理(Systemd)
sudo systemctl start nginx # 启动服务
sudo systemctl stop nginx # 停止服务
sudo systemctl restart nginx # 重启服务
sudo systemctl status nginx # 查看服务状态
3. 网络工具
# 查看 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. 批量重命名文件
# Mac(需安装 rename)
brew install rename
rename 's/old/new/' *.txt
# Linux(使用 rename 或 mmv)
sudo apt install rename
rename 'old' 'new' *.txt
2. 查找文件
# 按名称查找
find ~/ -name "*.log"
# 按内容查找
grep -rn "error" /var/log/
3. 压缩与解压
# 压缩目录为 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. 修改文件权限
chmod 755 script.sh # 设置权限为 rwxr-xr-x
chown user:group file # 修改文件所有者和组
2. SSH 密钥管理
# 生成密钥对
ssh-keygen -t ed25519
# 将公钥复制到服务器
ssh-copy-id user@remote-server
开发环境配置
1. Python 虚拟环境
# 创建虚拟环境
python -m venv myenv
# 激活环境(Mac/Linux)
source myenv/bin/activate
2. Node.js 版本管理(nvm)
# 安装 nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.5/install.sh | bash
# 安装 Node.js
nvm install 18
nvm use 18
注意事项
-
权限警告:
- 慎用
sudo
和 rm -rf
,避免误删系统文件。
- Mac 启用 SIP(系统完整性保护),部分系统目录不可修改。
-
脚本兼容性:
-
日志与调试:
- 使用
journalctl
(Linux)或 log show
(Mac)查看系统日志。
通过掌握这些命令和示例,您可以高效操作 Mac 和 Linux 系统!遇到问题时,记得善用 man <命令>
查看手册(如 man ls
)。