当前位置: 首页 > ai >正文

Linux 综合练习


Linux 综合练习

一、选择题(每题2分,共40分)

  1. 当登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么( )
    A. NID
    B. PID
    C. UID
    D. CID

  2. 下面哪个命令是用来定义shell的全局变量( )
    A. exportfs
    B. alias
    C. exports
    D. export

  3. 哪个目录存放用户密码信息( )
    A. /boot
    B. /etc
    C. /var
    D. /dev

  4. 默认情况下管理员创建了一个用户,就会在( )目录下创建一个用户主目录。
    A. /usr
    B. /home
    C. /root
    D. /etc

  5. 如果用户想对某一命令详细的了解,可用( )
    A. ls
    B. help (内部)
    C. man (列举的信息多)
    D. dir

  6. vi中哪条命令是不保存强制退出( )
    A. :wq
    B. :wq!
    C. :q!
    D. :quit

  7. 在Linux9中,一般用( )命令来查看网络接口的状态
    A. ping
    B. ipconfig
    C. winipefg
    D. ifconfig

  8. 以下哪个命令可以终止一个用户的所有进程( )
    A. skillall
    B. skill
    C. kill
    D. killall

  9. 用“rm -i”,系统会提示什么来让你确认( )
    A. 命令行的每个选项
    B. 是否真的删除
    C. 是否有写的权限
    D. 文件的位置

  10. 哪个命令可以将普通用户转换成超级用户( )
    A. super
    B. passwd
    C. tar
    D. su

  11. 默认情况下管理员创建了一个用户,就会在( )目录下创建一个用户主目录。
    A. /usr
    B. /home
    C. /root
    D. /etc

  12. 当使用mount进行设备或者文件系统挂载的时候。需要用到的设备名称位于( )目录。
    A. /bome
    B. /bin
    C. /enc
    D. /dev

  13. 如果要列出一个目录下的所有文件需要使用命令行( )
    A. -ls -l
    B. ls
    C. ls -a (所有)
    D. ls -d

  14. 在vi编辑器里,命令"dd"用来删除当前的( )
    A. 行
    B. 变量
    C. 字
    D. 字符

  15. 若要将鼠标从VM中释放出来,可按( )键来实现
    A. Ctrl+A
    B. Ctrl+Alt+Del
    C. Ctrl+Alt+Enter
    D. Ctrl+Enter

  16. /etc/shadow文件中存放( )
    A. 用户账号基本信息
    B. 用户口令的加密信息
    C. 用户组信息
    D. 文件系统信息

  17. 为卸载一个软件包,应使用( )
    A. rpm -i
    B. rpm -e
    C. rpm -q
    D. rpm -v

  18. 在Shell脚本中,用来读取文件内各个域的内容并将其赋值给Shell变量的命令是( )
    A. fold
    B. join
    C. tr
    D. read

  19. 用户编写了一个文本文件a.txt,想将该文件名称改为txt.a,下列命令( )可以实现。
    A. cd a.txt txt.a
    B. echo a.txt > txt.a
    C. rm a.txt txt.a
    D. cat a.txt > txt.a

  20. 以长格式列目录时,若文件 test的权限描述为: drwxrw-r–,则文件test的类型及文件主的权限是( )
    A. 目录文件、读写执行
    B. 目录文件、读写
    C. 普通文件、读写
    D. 普通文件、读


二、简答题(每题5分,共15分)

  1. vi编辑器有哪几种工作模式?如何在这几种工作模式之间转换?

  2. 执行命令ls -l时,某行显示如下:

-rw-r--r-- 1 chris chris 207 jul 20 11:58 mydata

(1) 用户 chris对该文件具有什么权限?
(2) 执行命令useradd Tom后,用户Tom对该文件具有什么权限?
(3) 如何使任何用户都可以读写执行该文件?
(4) 如何把该文件属主改为用户root?

  1. 什么是位置变量? shell的变量类型有哪些种?


三、操作题(每题4分,共20分)

  1. 假设你的用户账号是zhang,现在你登录进入linux系统,查看当前登录到系统中的用户,查看当前系统中运行的进程,然后再退出系统。

  2. 在当前目录/home/zhang下新建一个目录back,将当前目录改为back,在back下新建2个长度为0的文件test1、test2,然后把test2移到其父目录中并改名为file2。

  3. 现在需统计当前目录/home/zhang下普通文件的数目并显示结果,如何实现?

  4. 假设你是系统管理员,需要增加一个新的用户账号zhang,为新用户设置初始密码,锁定用户账号uly,并删除用户账号chang。

  5. 若需将/home/zhang目录下的所有文件打包压缩成/tmp/zhang.tar.gz,你准备怎么做? 当需要从压缩包中恢复时,又该如何处理?


四、Shell程序题(第1、2题共15分,第3题10分)

  1. 下面给出了一个SHELL程序,试对其行后有# (n)形式的语句进行解释,并说明程序完成的功能。

#!/bin/sh
DIRNAME=`ls /root | grep bak`    #(1)
if [ -z "$DIRNAME" ] ; then      #(2)mkdir /root/bak ; cd /root/bak   #(3)
fi
YY=`date +%y`; MM=`date +%m`; DD=`date +%d`  #(4)
BACKETC=$YY$MM$DD_etc.tar.gz     #(5)
tar -zcvf $BACKETC /etc          #(6)
echo "fileback finished!"
  1. 下面给出了一个SHELL程序,试对其行后有# (n)形式的语句进行解释,并说明程序完成的功能。

#!/bin/bash    #(1)
dir=$1         #(2)
if [ -d $dir ] #(3)
thencd $dir    #(4)for file in *doif [ -f $file ]   #(5)thencat $file     #(6)echo "end of file $file"fidone
elseecho "bad directory name $dir"
fi
  1. 写一个SHELL程序,该程序能接收用户从键盘输入的100个整数,然后求出其总和、最大值及最小值。


答案部分

一、选择题

1.B
2.D
3.B
4.B
5.C
6.C
7.D
8.D
9.B
10.D
11.B
12.D
13.C
14.A
15.C
16.B
17.B
18.D
19.D
20.A


二、简答题

  1. vi工作模式

  • 命令模式:默认进入模式,用来执行删除、复制、粘贴、保存、退出等命令。

  • 编辑模式:按iao等进入,可以插入文本。

  • 底行模式:按:进入,可输入保存、退出、查找替换命令。
    转换

  • 命令模式 → 编辑模式:i/a/o

  • 编辑模式 → 命令模式:Esc

  • 命令模式 → 底行模式::

  1. 文件权限分析:

  • (1) chris对该文件有读、写权限。

  • (2) 用户Tom属于其他用户,对该文件有只读权限。

  • (3) 命令:chmod 777 mydata

  • (4) 命令:chown root mydata

  1. 位置变量:在Shell脚本中,$1, $2, ...表示脚本执行时传入的参数。
    Shell变量类型:用户自定义变量、环境变量、位置变量、预定义变量。


三、操作题

who        # 查看当前登录用户
ps -ef     # 查看当前运行进程
exit       # 退出系统
mkdir /home/zhang/back
cd /home/zhang/back
touch test1 test2
mv test2 ../file2
ls -l /home/zhang | grep "^-" | wc -l
useradd zhang
passwd zhang
usermod -L uly
userdel chang
tar -zcvf /tmp/zhang.tar.gz /home/zhang
tar -zxvf /tmp/zhang.tar.gz -C /home/zhang

四、Shell程序题

  1. 解释:
    (1) 查找/root目录中是否存在含bak的目录名。
    (2) 判断变量是否为空,如果为空表示没有bak目录。
    (3) 创建/root/bak目录并进入。
    (4) 获取当前日期的年月日。
    (5) 拼接成压缩包名称。
    (6) 将/etc目录打包压缩。
    功能: 备份/etc目录到/root/bak下,文件名包含日期。

  2. 解释:
    (1) 指定解释器为bash。
    (2) 将第一个参数赋值给变量dir。
    (3) 判断是否为目录。
    (4) 切换到该目录。
    (5) 判断是否为普通文件。
    (6) 输出文件内容。
    功能: 显示指定目录下所有普通文件的内容,每个文件结束打印提示。

  3. 示例程序:

#!/bin/bash
sum=0
max=-999999
min=999999for ((i=1;i<=100;i++))
doread numsum=$((sum+num))if [ $num -gt $max ]; thenmax=$numfiif [ $num -lt $min ]; thenmin=$numfi
doneecho "总和: $sum"
echo "最大值: $max"
echo "最小值: $min"

http://www.xdnf.cn/news/20062.html

相关文章:

  • LTE CA和NR CA的区别和联系
  • 第七章 Cesium 3D 粒子烟花效果案例解析:从原理到完整代码
  • CSS Position 属性
  • Pspice仿真电路:(三十六)变压器仿真
  • 本科论文抽检档案整理:Python批量文件查找、打包、改名
  • 【uniapp】打包为h5在保留头部标题的同时配置网站标题不跟随页面路由更新
  • CVPR 2025|无类别词汇的视觉-语言模型少样本学习
  • RikkaHub:安卓原生AI聊天新体验
  • 【设计模式】UML 基础教程总结(软件设计师考试重点)
  • 十一、标准化和软件知识产权基础知识
  • 认识 Flutter
  • 告别 OpenAI SDK:如何使用 Python requests 库调用大模型 API(例如百度的ernie-4.5-turbo)
  • 【Qt开发】按钮类控件(三)-> QCheckBox
  • 【完整源码+数据集+部署教程】手袋类型检测系统源码和数据集:改进yolo11-AFPN-P345
  • 前端开发,同源策略
  • 【Linux】Linux进程状态和僵尸进程:一篇看懂“进程在忙啥”
  • 基于OpenGL封装摄像机类:视图矩阵与透视矩阵的实现
  • 如何下载B站视频,去水印,翻译字幕
  • .Net程序员就业现状以及学习路线图(四)
  • 创建线程有哪几种方式
  • 【数字孪生核心技术】数字孪生有哪些核心技术?
  • Kubernetes(四):Service
  • HyperWorks许可服务器设置
  • 企业微信AI怎么用?食品集团靠它砍掉50%低效操作,答案就是选对企业微信服务商
  • ZeroMQ 编译 项目使用流程文档
  • Android 生命周期函数调用原理
  • 《计算机网络安全》实验报告一 现代网络安全挑战 拒绝服务与分布式拒绝服务攻击的演变与防御策略(3)
  • 2025年数学建模国赛参考论文发布
  • 从碎片化到一体化:Java分布式缓存的“三级跳”实战
  • Spring Security 深度学习(六): RESTful API 安全与 JWT