
1. Linux基础命令概述作为一名Linux系统管理员我每天打交道最多的就是各种基础命令。这些看似简单的命令组合实际上构成了Linux系统的核心操作方式。与图形界面不同命令行操作更高效、更灵活特别是在服务器管理和自动化脚本编写方面具有不可替代的优势。Linux命令主要分为以下几类文件操作命令如ls、cp、mv、文本处理命令如grep、awk、sed、系统管理命令如ps、top、df以及网络相关命令如ping、ifconfig、netstat。掌握这些基础命令是每个Linux使用者必须跨越的第一道门槛。提示学习Linux命令时建议先掌握20个最常用的命令然后再逐步扩展。不要试图一次性记住所有命令这既不现实也没必要。2. 文件与目录操作命令2.1 基本导航命令pwd命令Print Working Directory可能是你最先需要掌握的。它简单地显示当前所在目录的完整路径。当你迷失在复杂的目录结构中时这个命令能让你快速定位。cd命令Change Directory用于切换目录。几个常用技巧cd ~返回用户主目录cd -返回上一个工作目录cd ..返回上级目录ls命令List列出目录内容但它的强大之处在于各种参数组合ls -l显示详细信息权限、所有者、大小等ls -a显示所有文件包括隐藏文件ls -lh以人类可读格式显示文件大小ls -t按修改时间排序2.2 文件操作命令cp命令Copy用于复制文件或目录cp source_file destination_file # 复制文件 cp -r source_dir destination_dir # 递归复制目录mv命令Move用于移动或重命名文件mv old_name new_name # 重命名 mv file dir/ # 移动文件到目录rm命令Remove删除文件使用时需格外小心rm file # 删除文件 rm -r dir # 递归删除目录 rm -f file # 强制删除不提示警告rm -rf /这样的命令极其危险可能导致系统崩溃。执行删除操作前务必确认路径。3. 文本处理与查看命令3.1 查看文件内容cat命令Concatenate是最简单的文件查看方式cat file.txtless和more命令更适合查看大文件支持分页浏览less large_file.loghead和tail命令分别显示文件开头和结尾部分head -n 10 file.log # 显示前10行 tail -f app.log # 实时跟踪日志更新3.2 文本搜索与处理grep命令是文本搜索的利器grep error logfile.txt # 搜索包含error的行 grep -i warning logfile.txt # 忽略大小写搜索 grep -r function /path/to/dir # 递归搜索目录awk和sed是更强大的文本处理工具awk {print $1} data.txt # 打印每行第一个字段 sed s/old/new/g file.txt # 替换文本4. 系统管理与监控命令4.1 进程管理ps命令查看进程信息ps aux # 显示所有运行中的进程 ps -ef | grep nginx # 查找特定进程top命令提供实时系统监控topkill命令用于终止进程kill -9 PID # 强制终止指定PID的进程4.2 磁盘与内存管理df命令显示磁盘空间使用情况df -h # 以人类可读格式显示du命令查看目录占用空间du -sh /path/to/dir # 显示目录总大小free命令查看内存使用free -m # 以MB为单位显示5. 网络相关命令5.1 网络配置与测试ifconfig或ip命令查看和配置网络接口ifconfig ip addr showping命令测试网络连通性ping example.comnetstat命令显示网络连接信息netstat -tulnp # 查看监听端口和对应程序5.2 远程连接与文件传输ssh命令远程登录ssh usernamehostnamescp命令安全复制文件scp file.txt userremote:/path # 上传 scp userremote:/path/file.txt . # 下载6. 权限与用户管理6.1 文件权限chmod命令修改文件权限chmod 755 script.sh # 设置权限为rwxr-xr-x chmod x script.sh # 添加执行权限chown命令修改文件所有者chown user:group file.txt6.2 用户管理useradd和passwd命令管理用户useradd newuser passwd newusersu和sudo命令切换用户身份su - username # 切换用户 sudo command # 以root权限执行7. 实用技巧与组合命令7.1 命令组合与管道Linux命令的强大之处在于可以通过管道(|)将多个命令组合使用ps aux | grep nginx # 查找nginx进程 cat access.log | awk {print $1} | sort | uniq -c | sort -nr # 统计访问IP7.2 实用快捷键CtrlC终止当前命令CtrlZ暂停当前进程可用fg恢复CtrlD结束输入或退出终端CtrlR反向搜索命令历史!!重复上一条命令!$引用上一条命令的最后一个参数7.3 命令帮助与文档几乎所有命令都提供帮助信息command --help # 简要帮助 man command # 完整手册 info command # 详细信息8. 常见问题与解决方案8.1 权限被拒绝问题当遇到Permission denied错误时检查当前用户权限whoami查看文件权限ls -l file使用sudo或以正确用户身份执行8.2 命令找不到问题如果提示command not found检查命令拼写是否正确确认命令是否安装which command检查PATH环境变量echo $PATH8.3 磁盘空间不足处理No space left on device错误检查磁盘使用df -h查找大文件du -sh /* | sort -rh | head -n 10清理日志或临时文件9. 学习资源与进阶建议9.1 推荐学习路径先掌握20个最常用命令学习命令参数和选项练习命令组合和管道编写简单shell脚本深入理解Linux权限模型9.2 实用练习方法每天学习2-3个新命令尝试用命令行完成日常任务记录常用命令到备忘单参与Linux论坛和社区讨论9.3 进阶方向建议Shell脚本编程正则表达式系统性能调优网络服务配置自动化运维工具在实际工作中我发现很多问题其实都可以通过基础命令的组合来解决。关键是要理解每个命令的工作原理而不是死记硬背。比如当服务器负载高时我会用top查看整体情况然后用ps aux --sort-%cpu | head找出最耗CPU的进程最后用strace或lsof分析具体问题。这种系统化的思维方式比单纯记住命令更重要。