作为前端开发者,虽然我们的主要工作是在浏览器和编辑器之间切换,但了解基本的 Linux 命令是非常必要的。无论是部署项目、查看服务器日志,还是使用 Docker 容器,都需要与 Linux 命令行打交道。这篇笔记整理了我最常用的 Linux 命令,适合快速查阅。
文件操作
查看与导航
| 命令 | 说明 |
|---|---|
ls | 列出目录内容 |
ls -la | 详细列表,包含隐藏文件 |
pwd | 显示当前工作目录 |
cd <dir> | 切换目录 |
cd .. | 返回上级目录 |
cd ~ | 回到用户主目录 |
创建与删除
# 创建文件/目录
touch filename.txt # 创建空文件
mkdir dirname # 创建目录
mkdir -p a/b/c # 递归创建多级目录
# 复制与移动
cp source dest # 复制文件
cp -r dir1 dir2 # 复制目录
mv oldname newname # 重命名或移动
# 删除
rm filename # 删除文件
rm -r dirname # 删除目录
rm -rf dirname # 强制删除(危险!)
查看文件内容
cat filename # 显示整个文件内容
less filename # 分页查看,可按 q 退出
head -n 20 file # 查看前 20 行
tail -n 20 file # 查看最后 20 行
tail -f logfile # 实时跟踪日志输出
权限管理
Linux 的权限系统是初学者最容易困惑的部分之一。理解权限的三个角色和三种类型是关键:
- 角色:owner(所有者)、group(组用户)、others(其他用户)
- 类型:r(读=4)、w(写=2)、x(执行=1)
# 查看权限
ls -l filename
# 修改权限(数字模式)
chmod 755 filename # rwxr-xr-x
chmod 644 filename # rw-r--r--
# 修改所有者
chown user:group file
进程管理
# 查看进程
ps aux # 查看所有进程
top # 实时进程监控(按 q 退出)
htop # top 的增强版(需安装)
# 查找进程
pgrep nginx # 按名称查找 PID
lsof -i :3000 # 查看占用 3000 端口的进程
# 结束进程
kill <PID> # 正常终止
kill -9 <PID> # 强制终止
网络相关
# 查看网络连接
netstat -tuln # 监听中的端口
ss -tuln # netstat 的现代替代
# 测试网络连通性
ping example.com # 测试网络连通
curl http://example.com # 请求网页内容
wget <url> # 下载文件
# 查看 IP 地址
ip addr show # 显示网络接口信息
文本处理
这些命令在处理日志和配置文件时非常有用:
# 搜索内容
grep "error" logfile # 搜索包含 error 的行
grep -n "error" logfile # 显示行号
grep -r "todo" ./src # 递归搜索目录
# 文本统计
wc -l filename # 统计行数
wc -w filename # 统计单词数
# 管道组合使用
cat access.log | grep "404" | wc -l # 统计 404 错误数量
tail -f app.log | grep "ERROR" # 实时过滤错误日志
软件包管理
# Ubuntu/Debian
sudo apt update # 更新软件源
sudo apt install <package> # 安装软件
sudo apt remove <package> # 卸载软件
# CentOS/RHEL
sudo yum install <package> # 安装软件
sudo yum remove <package> # 卸载软件
压缩与解压
# tar 压缩包
tar -czf archive.tar.gz dirname/ # 压缩
tar -xzf archive.tar.gz # 解压
# zip 压缩包
zip -r archive.zip dirname/ # 压缩
unzip archive.zip # 解压
实用小技巧
- Tab 补全:输入部分命令或文件名后按 Tab 键自动补全
- 历史命令:上下箭头浏览历史命令,
!!执行上一条命令 - 别名设置:在
~/.bashrc中设置常用命令的别名 - sudo 提权:需要管理员权限的命令前加
sudo - & 后台运行:命令后加
&可以在后台运行程序
学习 Linux 命令最好的方式就是多动手实践。不要害怕在测试服务器上尝试新命令,但生产环境操作前一定要确认命令的含义。
总结
对于前端开发者来说,不需要成为 Linux 专家,但掌握这些基础命令足以应对大部分日常需求。建议把这篇文章收藏起来,遇到不熟悉的命令时随时查阅。随着使用频率的增加,你会逐渐记住更多命令和技巧。
如果你需要深入了解某个主题,推荐查看官方文档或使用 man <command> 命令查看帮助信息。