2-7 Linux学习资源推荐
Linux 命令学习路径
掌握 Linux 命令行是前端全栈开发者的必备技能。以下是从入门到熟练的系统化学习资源与常用命令速查。
核心学习资源
| 资源名称 | 适用场景 | 特点 |
|---|---|---|
| Linux 命令大全(man.linuxde.net) | 命令速查 | 按文件、系统、磁盘分类索引,右侧常见命令速览 |
| 菜鸟教程 — Linux(runoob.com) | 入门学习 | 基础命令逐步讲解,适合零基础快速上手 |
| Shell 脚本教程(runoob.com) | 自动化进阶 | 涵盖变量、条件判断、循环、函数等编程要素 |
| 官方 Reference Manual(man7.org) | 深入参考 | 操作系统权限、配置文件、系统调用的权威文档 |
离线环境下的命令查询
在内网或无法联网的环境中,Linux 内置了多种帮助命令:
# --help:快速查看命令用法(最常用)
top --help
fdisk --help
docker --help
# man:查看完整手册页
man ls
man grep
man find
# info:查看更详细的文档(GNU 工具)
info coreutils
# history:查看历史执行的命令
history
history | grep "docker" # 搜索历史中包含 docker 的命令
bash
高频命令速查表
文件与目录操作
# 目录导航
pwd # 显示当前工作目录
ls -la # 列出所有文件(含隐藏文件和详细信息)
cd /var/log # 切换到指定目录
cd - # 返回上一个工作目录
# 文件查看
cat /etc/os-release # 输出文件完整内容
less /var/log/syslog # 分页查看(支持上下翻页,按 q 退出)
head -n 20 app.log # 查看文件前 20 行
tail -f app.log # 实时追踪文件尾部(查看日志必备)
# 文件与目录管理
mkdir -p src/components # 递归创建目录
cp -r dist/ /backup/ # 递归复制目录
mv old-name.ts new-name.ts # 重命名 / 移动文件
rm -rf node_modules/ # 递归删除目录(谨慎使用)
find . -name "*.log" -mtime +7 -delete # 删除 7 天前的日志文件
bash
搜索与过滤
# grep — 文本搜索(配合管道符使用频率极高)
ps aux | grep node # 查找 node 相关进程
grep -r "TODO" src/ # 递归搜索源码中的 TODO
grep -rn "import.*from" src/ | grep -v node_modules # 排除 node_modules
# find — 文件查找
find . -name "*.env" # 按文件名查找
find /var -type f -name "*.log" # 查找所有日志文件
find . -name "*.ts" | xargs wc -l # 统计所有 TS 文件行数
find . -size +100M # 查找大于 100MB 的文件
# 组合使用:find + grep
find . -name "*.ts" -exec grep -l "deprecated" {} \;
# 查找所有包含 "deprecated" 的 TS 文件
bash
系统与进程管理
# 系统信息
uname -a # 查看系统内核信息
df -h # 查看磁盘使用情况(人类可读格式)
du -sh * | sort -rh | head -10 # 查看当前目录下最大的 10 个文件/目录
free -h # 查看内存使用情况
# 进程管理
ps aux # 查看所有进程
top # 实时进程监控(按 q 退出)
kill -9 12345 # 强制终止进程
lsof -i :3000 # 查看占用 3000 端口的进程
# 网络相关
curl -I https://example.com # 查看 HTTP 响应头
wget https://example.com/file.tar.gz # 下载文件
netstat -tlnp # 查看监听的端口(或 ss -tlnp)
bash
权限与用户
# 文件权限
chmod 755 deploy.sh # 设置权限: rwxr-xr-x
chmod +x startup.sh # 添加可执行权限
chown user:group file.txt # 修改文件所有者
# Tab 补全(提效神器)
# 按 Tab 键一次自动补全文件名/命令名
# 按 Tab 键两次列出所有候选项
bash
Shell 脚本基础
Shell 脚本是将一系列命令自动化的核心能力,与编程语言高度相似:
#!/bin/bash
# 变量
APP_NAME="frontend-app"
DEPLOY_DIR="/var/www/$APP_NAME"
BACKUP_DIR="/backup/$APP_NAME-$(date +%Y%m%d)"
# 条件判断
if [ ! -d "$DEPLOY_DIR" ]; then
echo "目录不存在,正在创建: $DEPLOY_DIR"
mkdir -p "$DEPLOY_DIR"
fi
# 循环
for env in staging production; do
echo "部署到 $env 环境..."
done
# 函数
build_project() {
echo "开始构建项目..."
npm run build
if [ $? -eq 0 ]; then
echo "构建成功"
else
echo "构建失败" >&2
exit 1
fi
}
# 调用函数
build_project
bash
学习建议
- 先掌握高频命令 —
cd、ls、cat、grep、find、tail、ps、kill覆盖 80% 日常工作 - 善用 Tab 补全 — 减少输入错误,快速探索目录结构
- 善用管道符
|— Linux 哲学"组合小工具完成复杂任务"的核心体现 - 多用自然熟 — 命令行操作是肌肉记忆,实际使用中逐渐内化
- Shell 脚本是从运维到自动化的桥梁 — 掌握变量、条件、循环即可编写实用的自动化脚本
↑