Ubuntu常用指令大全:系统管理与开发必备

📅 2026/7/18 2:34:27
Ubuntu常用指令大全:系统管理与开发必备
1. Ubuntu 常用指令概述作为一名Linux系统管理员我整理了这份Ubuntu常用指令大全。这些指令都是我日常工作中高频使用的涵盖了系统管理、文件操作、网络配置等核心场景。不同于网上那些零散的指令列表我会结合实际操作经验告诉你每个指令背后的使用逻辑和常见坑点。Ubuntu作为最流行的Linux发行版之一无论是服务器运维还是开发环境搭建都离不开命令行操作。掌握这些基础指令能让你在终端里游刃有余。下面这些指令适用于Ubuntu 18.04及以上版本部分指令在WSL环境下也同样适用。2. 文件与目录操作指令2.1 基础文件操作# 列出目录内容我最常用的参数组合 ls -alh-a显示隐藏文件-l长格式显示-h人类可读的文件大小注意在含有大量文件的目录下使用ls -l会比ls慢很多这时建议直接用ls快速查看。# 复制文件保留原文件属性 cp -p source_file target_file2.2 目录操作进阶技巧# 创建多级目录避免逐个创建 mkdir -p project/{src,test,doc}这个指令会一次性创建project目录及其下的src、test、doc子目录。大括号扩展是bash的一个实用特性可以节省大量重复输入。# 查找文件我最常用的三种方式 find /path -name *.log -mtime 7 # 查找7天前的日志文件 locate filename # 快速查找需要先updatedb whereis python # 查找二进制文件位置3. 系统管理与监控指令3.1 进程管理实战# 查看进程带完整命令行 ps -ef我习惯用这个组合而不是简单的ps aux因为-ef显示的COMMAND列更完整可以看到带参数启动的进程。# 动态监控系统资源 top -d 1 -u username-d 1设置刷新间隔为1秒-u username只查看指定用户的进程实用技巧在top界面按M按内存排序按P按CPU排序按c显示完整命令。3.2 系统服务管理# 查看服务状态systemd系统 systemctl list-units --typeservice对于服务管理我强烈建议使用systemctl而不是老旧的service命令。它能提供更详细的状态信息和控制选项。# 设置开机自启 sudo systemctl enable nginx # 立即启动服务 sudo systemctl start nginx4. 网络配置与调试4.1 基础网络诊断# 查看IP地址推荐方式 ip addr show比起老旧的ifconfigip命令提供了更强大的功能。特别是在配置多个IP或VLAN时更灵活。# 持续ping测试带时间戳 ping -O -D 8.8.8.8-O显示超时信息-D显示时间戳4.2 高级网络工具# 查看路由表 ip route show # 追踪路由路径 traceroute -n google.com # 查看端口监听情况 ss -tulnp我更喜欢用ss而不是netstat因为它速度更快特别是在服务器有大量连接时。5. 软件包管理技巧5.1 apt使用进阶# 更新软件源先更新再升级是好习惯 sudo apt update sudo apt upgrade重要提示生产环境升级前一定要先测试我曾经因为盲目升级导致关键服务不可用。# 查找软件包 apt search ^nginx # 查看软件包详情 apt show nginx5.2 源码编译安装# 典型编译安装流程 ./configure --prefix/usr/local make -j$(nproc) sudo make install-j$(nproc)参数会根据CPU核心数自动设置编译线程数大幅提高编译速度。6. 用户与权限管理6.1 用户账户操作# 添加用户并创建家目录 sudo useradd -m -s /bin/bash newuser # 设置密码 sudo passwd newuser6.2 权限控制实战# 递归修改目录权限 chmod -R 750 /path/to/dir # 修改文件属主 chown user:group file安全提示永远不要随意使用chmod 777这是安全隐患的温床。应该精确设置所需的最小权限。7. 文本处理三剑客7.1 grep高效搜索# 递归搜索内容忽略大小写 grep -rni keyword /path-r递归搜索-n显示行号-i忽略大小写7.2 sed流编辑器# 替换文件内容直接修改文件 sed -i s/old/new/g file.txt7.3 awk数据处理# 提取特定列并计算 awk {sum$3} END {print sum} data.txt8. 磁盘与存储管理8.1 磁盘空间分析# 查看磁盘使用情况人类可读格式 df -h # 查找大文件 du -sh * | sort -h8.2 挂载操作要点# 查看挂载信息 mount | column -t # 永久挂载编辑/etc/fstab UUIDxxxx /mountpoint ext4 defaults 0 2经验之谈在fstab中使用UUID而不是设备名如/dev/sda1因为设备名可能会变。9. 系统日志分析9.1 常用日志文件# 查看系统日志 journalctl -xe # 查看认证日志 tail -f /var/log/auth.log9.2 日志分析技巧# 统计错误日志出现次数 grep ERROR /var/log/syslog | awk {print $5} | sort | uniq -c | sort -nr10. 实用快捷键与小技巧10.1 终端快捷键Ctrl R反向搜索命令历史Ctrl A/E移动到行首/行尾Alt .插入上一个命令的最后一个参数10.2 命令行效率工具# 记录终端会话 script -a session.log # 批量重命名文件 rename s/\.jpeg$/\.jpg/ *.jpeg这些指令只是Ubuntu强大命令行功能的冰山一角。在实际使用中我建议多用man命令查看指令手册比如man grep会显示grep的所有选项和用法。记住掌握命令行不是要背下所有指令而是理解其逻辑知道在什么场景下用什么工具。