linux系统基础命令练习题
linux系统基础命令练习题详细介绍
以下是针对 Linux 系统基础命令的练习题,涵盖文件 / 目录操作、权限管理、文本处理、进程管理、网络等常见场景,附参考答案及解析:
一、文件与目录操作
1. 基础操作
- 创建目录
project,并在其中创建文件file1.txt和file2.txt。 - 将
file1.txt复制到当前用户主目录,并重命名为backup.txt。 - 删除
file2.txt,然后将project目录移动到/tmp/下。
2. 查看与编辑
- 用命令查看
etc/passwd文件的前 5 行和最后 3 行。 - 查找当前目录中所有以
.log结尾的文件,并按修改时间排序。 - 用文本编辑器(如
nano或vim)在home/username目录下创建notes.txt,内容为 "Linux command practice"。
3. 高级操作
- 递归查找
/var/log目录中包含 "error" 字符串的所有日志文件。 - 统计当前目录下所有文件的总大小(以 MB 为单位)。
- 压缩
project目录(保留目录结构)为project.tar.gz,并解压到/tmp/。
二、权限管理
1. 基础权限
- 给
file1.txt设置权限:所有者可读可写,组用户可读,其他用户无权限(用数字和符号两种方式)。 - 将
dir1目录的所有者改为userA,所属组改为groupB。 - 递归设置
docs目录的权限为:所有者全权限,组用户可读可执行,其他用户只读。
2. 特殊权限
- 给
script.sh增加可执行权限,并设置 SetUID 位(假设该脚本属于 root 用户)。 - 确保
shared_dir目录中,用户只能删除自己创建的文件(设置粘滞位)。
三、文本处理与管道
1. 基础文本操作
- 用
cat合并file1.txt和file2.txt为merged.txt。 - 用
grep查找/etc/ssh/sshd_config中以#开头的注释行。 - 用
sed将text.txt中的所有小写字母a替换为大写A。
2. 数据统计
- 统计
access.log中包含 "404 Not Found" 的行数。 - 提取
passwd文件中所有用户的 UID(第二列),并去重排序。 - 用
awk计算numbers.txt文件中所有整数的和(每行一个数字)。
四、进程与系统管理
1. 进程查看
- 用
ps命令查看当前用户的所有进程,包括 PID、进程名、CPU 和内存占用。 - 用
top或htop实时监控占用 CPU 最高的进程,并终止该进程(假设 PID 为 1234)。 - 查找名为
apache2的进程,并杀死所有相关进程(强制终止)。
2. 系统状态
- 查看系统当前的负载平均值(1 分钟、5 分钟、15 分钟)。
- 检查内存使用情况,显示已用、可用内存和交换空间。
- 列出最近 10 条系统日志(
/var/log/syslog)。
五、网络与远程操作
1. 网络诊断
- 测试与
www.baidu.com的连通性,并显示路由路径。 - 查看本地开放的 TCP 端口及其对应的进程(PID 和进程名)。
- 用
curl或wget下载https://example.com/file.zip到当前目录。
2. 远程操作
- 通过 SSH 登录到远程服务器
192.168.1.100,用户名为admin。 - 将本地文件
report.txt传输到远程服务器的/var/www/目录(用scp或sftp)。
六、综合实战题
- 日志分析:在
access.log中,找出访问次数最多的前 5 个 IP 地址,并统计其访问次数。
bashaccess.log - 磁盘管理:查找根目录下大于 100MB 的文件,并按大小排序。
bash/ f +100M + - 环境变量:临时设置环境变量
MYVAR=hello,并在脚本中引用该变量(编写简单 Shell 脚本验证)。
参考答案与解析(部分示例)
1. 文件操作题
- 创建目录和文件:bash
project project file1.txt file2.txt - 复制并重命名:bash
file1.txt ~/backup.txt - 删除、移动:bash
file2.txt /project /tmp/
2. 权限设置(符号模式):
bash
rw,gr,o file1.txtfile1.txt
3. 文本处理(统计 404 日志):
bash
access.log
4. 进程终止:
bash
aux apache2
学习建议
- 动手实践:在虚拟机或 Linux 服务器上实际操作,观察命令输出。
- 帮助文档:用
man 命令或--help查看详细用法(如man chmod)。 - 管道与组合:尝试将多个命令通过管道连接(如
ls -l | grep .txt),提升效率。
通过以上练习,可巩固 Linux 基础命令的使用,建议从简单题开始,逐步挑战综合场景题。