Linux命令题库涵盖了从基础文件操作到高级系统管理的广泛内容,是学习和掌握Linux系统的重要工具,以下将详细解析常见的Linux命令分类、使用场景及示例,帮助用户系统化提升技能。

在文件与目录管理方面,ls
命令是最基础的列出工具,其常用选项包括-l
(长格式显示)、-a
(显示隐藏文件)和-h
(人类可读格式)。ls -lah
会以详细、隐藏且带单位的方式展示当前目录内容,创建目录使用mkdir
,如mkdir -p test/subdir
可递归创建多级目录;删除空目录则用rmdir
,而rm -rf
(慎用)可强制删除非空目录,文件操作中,touch file.txt
创建空文件,cp -r source_dir dest_dir
递归复制目录,mv old_name new_name
用于重命名或移动文件,查看文件内容时,cat
适合小文件,less
支持分页浏览大文件,head -n 5 file
和tail -f file
则分别查看文件前5行和实时追踪日志更新。
文本处理是Linux命令的核心应用之一。grep
命令用于文本搜索,如grep "error" log.txt
匹配含"error"的行,-i
选项忽略大小写,-v
反向匹配。sed
流编辑器可实现文本替换,例如sed 's/old/new/g' file
全局替换"old"为"new"。awk
擅长列处理,awk -F '{print $1,$3}' file
以空格分隔并输出第1、3列。sort
用于排序,uniq
去重,常与管道结合使用,如sort file | uniq
,文本统计方面,wc -l file
统计行数,wc -w file
统计单词数。
系统信息与管理命令帮助用户监控和控制系统状态。top
和htop
实时显示进程资源占用,ps aux
列出所有进程,磁盘空间检查使用df -h
(查看分区使用率)和du -sh *
(统计当前目录大小),网络相关命令中,ifconfig
或ip addr
查看IP配置,ping www.baidu.com
测试网络连通性,netstat -tuln
监听端口状态,用户管理方面,useradd username
创建用户,passwd username
设置密码,sudo userdel -r username
删除用户及其家目录,权限修改通过chmod 755 file
(rwxr-xr-x)和chown user:group file
实现。
压缩与打包命令简化了文件传输和存储。tar -czvf archive.tar.gz dir/
将目录打包并gzip压缩,tar -xzvf archive.tar.gz
解压。zip -r archive.zip dir/
创建zip压缩包,unzip archive.zip
解压,对于大型文件,split -b 10M large_file.txt
按10MB分割,cat x* > merged_file
合并。

任务自动化与脚本编程提升效率。crontab -e
编辑定时任务,如0 2 * * * /backup/script.sh
每日凌晨2点执行,变量赋值用name="value"
,条件判断通过if [ $age -gt 18 ]; then echo "adult"; fi
实现,循环示例:for i in {1..5}; do echo $i; done
,函数定义如hello() { echo "Hello, $1"; }; hello "World"
。
以下为常用命令速查表:
功能分类 | 命令 | 示例 | 说明 |
---|---|---|---|
列出文件 | ls | ls -la | 显示所有文件详情 |
创建目录 | mkdir | mkdir -p new/dir | 递归创建多级目录 |
删除文件/目录 | rm | rm -rf dir/ | 强制删除非空目录 |
查看文件内容 | cat/less | less /var/log/syslog | 分页查看大文件 |
文本搜索 | grep | grep "login" auth.log | 搜索含"login"的行 |
流编辑 | sed | sed 's/yes/no/g' file.txt | 全文替换"yes"为"no" |
进程监控 | top/htop | htop | 实时显示进程资源占用 |
磁盘空间 | df/du | df -h | 显示分区使用率 |
网络测试 | ping/netstat | ping 8.8.8.8 | 测试网络连通性 |
压缩打包 | tar | tar -czvf backup.tar.gz /home/user | 打包并gzip压缩目录 |
定时任务 | crontab | crontab -e | 编辑用户定时任务 |
相关问答FAQs
-
问:如何查找并删除指定目录下所有扩展名为.tmp的文件?
答: 使用find
命令结合-exec
参数。find /path/to/directory -name "*.tmp" -exec rm -f {} \;
,该命令会在指定目录及其子目录中查找所有.tmp文件,并通过-exec
执行删除操作,若需确认删除,可将rm -f
替换为ls -l
先预览结果。(图片来源网络,侵删) -
问:如何查看当前系统运行的端口占用情况及对应进程? 答: 使用
netstat
或ss
命令。sudo netstat -tulnp | grep :80
查看80端口占用情况,或sudo ss -tulnp | grep :80
(ss
为netstat
的替代品,性能更优),输出结果中包含协议、本地地址、端口、进程ID(PID)及进程名,可通过kill -9 PID
终止占用端口的进程。