SCAU期末笔记 - Linux系统应用与开发教程样卷解析(2024版)

news2025/2/26 19:32:36

我真的不理解奥,为什么会有给样卷不自带解析的,对答案都没得对,故整理一篇

样卷1

一、选择题

1、为了遍历shell脚本调用时传入的参数,需要在shell脚本中使用_____。

  • A.$#表示参数的个数
  • B.S@表示所有参数
  • C.$0表示脚本名
  • D.$1表示第一个参数

2、安装了带图形化界面的RedHatLinux系统,默认的运行级别为_____。

带图形化界面的RedHat Linux系统默认运行级别为5,选C

3、为了回到个人的home目录,可以执行_____。

cd ~可以回到个人的home目录,选C

4、在 bash 中, 在一条命令后加入 “1>&2” 意味着_____。

表示标准输出重定向到错误输出,选D

5、Linux 启动时第一个启动的进程为init进程,它的进程号PID为_____。

init进程的PID为1,选B

6、假设执行cat/etc/passwd命令后,发现以下记录信息:games:x:12:100:games:/usr/games:/sbin/nologin,下列说法错误的是_____。

/etc/passwd文件中,记录格式为用户名:密码:用户ID:组ID:用户描述:家目录:登录Shell,所以用户ID为12,组ID为100,home目录是/usr/games,不能登录shell,选A

7、某系统已存在一块名为/dev/sda的SCSI硬盘,现在再插入一个U盘, 该U盘的设备名可能为_____。

sda被占用,其他的数字从1开始数,所以可能是/dev/sdb1,选C

8、为了查看端口占用情况,可以用_____命令。

  • A.netstat命令用于显示网络连接、路由表、接口统计信息等,通过相关参数可以查看端口占用情况
  • B.ifconfig主要用于配置和现实网络接口信息,如IP地址、子网掩码、MAC地址等
  • C.ping命令用于测试网络连接,向目标主机发送ICMP数据包并等待响应
  • D.traceroute用于追踪数据包在网络中的传输路径,显示从源主机到目标主机所经过的路由器列表

9、下列说法正确的是_____。

  • A.开源软件不一定是免费的
  • B.GPL协议允许公司销售自由软件,但销售时必须遵循GPL协议的规定
  • C.F热额BSD是一个类Unix操作系统,不是Linux发行版本
  • D.正确

10、不能查看系统资源信息的命令是_____。

  • A.du命令用于查看磁盘使用空间,是查看系统资源信息(磁盘资源方面)的命令
  • B.free命令用于显示系统内存的使用情况,包括物理内存、交换空间等信息,是查看系统资源信息(内存资源方面)的命令
  • C.shfs这个命令在正常的Linux系统命令集中根本不存在
  • D.top命令提供了实时动态地查看系统资源使用情况的功能

11、关于前台进程和后台进程,说法正确的是_____。

  • A.后台进程才需要加&,前台直接执行即可
  • B.正确
  • C.后台进程在后台运行,不影响前台继续执行其他命令,不需要等待后台进程执行完毕后执行下一个命令
  • D.Ctrl+C用于终止前台进程,后台进程需要用kill命令加上进程ID等方式

12、下列命令中,不能实现文件保存的是_____。

  • A.:wq表示保存文件并退出
  • B.:w表示保存文件但不退出
  • C.:x用法类似:wq,只在某些情况下略有不同
  • D.:q!表示不保存文件强制退出

13、下列命令中,没有导致vi工作模式切换的是_____。

  • A.:wq会从编辑模式切换到命令模式然后退出
  • B.o指在当前行下方打开新行并进入插入模式
  • C.gg是跳转到文件开头,一直处于命令模式没有切换
  • D.?wq是在vi中进行反向查找wq,会从命令模式切换到查找模式

14、下列命令中,不能使vi进入插入模式的是_____。

  • A.a用于在光标后进入插入模式
  • B.i用于在光标前进入插入模式
  • C.o用于在当前行下方插入新行并进入插入模式
  • D.r用于替换当前字符,不进入插入模式

15、当字符串用单引号括起来时,shell将_____。

不解释特殊字符,选D

16、以下关于shell程序的说法正确的是_____。

  • A.不同的shell解释器有不同的语法和特性
  • B.shell程序执行效率相对较低,不适合用于时间紧迫型或任务器忙碌型任务
  • C.正确
  • D.如果程序文件本身有可执行权限就可以直接执行

17、将光盘/dev/hdc 卸载的命令是_____。

umount/dev/hdc,选A

18、在利用gdb进行调试过程中,如果需要单步执行,且不进入函数内部,应该使用_____。

  • A.next单步执行,不进入函数内部
  • B.step单步执行,进入函数内部
  • C.run运行程序
  • D.go继续执行程序

19、下面关于less和more的说法错误的是_____。

  • A.lessmore都具备分页查看文件内容的功能,用户可以逐页浏览文件。
  • B.通常情况下,less在处理大容量文档时速度更快,并且具有更多功能,如支持上下键滚动浏览等,而more相对简单。
  • C.less允许用户使用上下方向键在文件中上下浏览,方便查看文件内容。
  • D.more在查看文件时会将整个文档读入内存,这在处理大文件时可能会占用较多内存资源。

20、系统默认的_____用户对整个系统拥有完全的控制权。

  • A.administrator是Windows里面的,Linux里面没有这个
  • B.guest顾名思义肯定不是
  • C.root是Linux默认的超级用户,具有最高权限
  • D.supervistor这个默认用户不存在

二、简答题

1、解释软链接、硬链接以及复制三者之间的联系与区别。

  • 联系:都跟文件操作相关
  • 区别:
    • 软链接就是快捷方式
    • 硬链接是对内存的指针,只有把所有的硬链接删除才算是删除这个文件
    • 复制就是内存复制了一份,两个东西是独立的

2、画出VFS的结构图,并说明VFS的功能与作用。

转自知乎@Linux内核库

  • 功能:提供统一的文件和文件系统操作系统,隐藏底层文件系统的差异
  • 作用:隔离应用程序与底层文件系统,方便应用程序的兼容

3、以图解方式解释xinetd工作模式,并说明选择该工作模式的原则。

原则:系统中有多个不常用的网络服务或是安全性要求较高的话就用xinetd

三、编程题

1、编写一个shell程序可以完成以下执行过程。

首先是熟悉的多case,直到读入q结束,不然就是循环读数字,最后返回他们的和

#!/bin/bash

while true
do
    echo "Input a list of number:"
    read numbers
    if [ "$numbers" = "q" ]; then
        break
    fi
    sum=0
    for num in $numbers
    do
        sum=$(($sum + $num))
    done
    echo "the result is $sum"
done

2、编写一段shell程序实现以下功能。

熟悉的if-else开会

#!/bin/bash

while true
do
    echo "Please input the student's score:"
    read score
    if [ $score -lt 0 ]; then
        exit 0
    elif [ $score -le 60 ]; then
        echo "Failed!"
    elif [ $score -le 69 ]; then
        echo "Passed!"
    elif [ $score -le 79 ]; then
        echo "Medium!"
    elif [ $score -le 89 ]; then
        echo "Good!"
    elif [ $score -le 100 ]; then
        echo "Excellent!"
    else
        echo "Error score"
    fi
done

四、综合应用题

1、根据要求写出相应的操作命令,假设文件和目录已存在。

  • 1) ls -al /tmp
    • ls是列出目录内容的命令。
    • -a选项表示显示所有文件,包括隐藏文件(以.开头的文件)。
    • -l选项以长格式显示文件信息,包括文件权限、所有者、大小、修改时间等。
  • 2) chmod 754 /tmp/a.txt
    • chmod用于修改文件权限。
    • 754是权限的八进制表示,其中7表示所有者具有读(4)、写(2)、执行(1)权限,5表示同组用户具有读(4)和执行(1)权限,4表示其他用户具有读(4)权限。
  • 3) chown mail:games /tmp/b.txt
    • chown用于更改文件所有者和所属组。
    • mail是要设置的文件所有者,games是要设置的文件所属组。
  • 4) mv /tmp/c.txt /tmp/c.txt.bak
    • mv命令用于移动或重命名文件。
    • 这里将/tmp/c.txt重命名为/tmp/c.txt.bak
  • 5) date >> ~/d.txt
    • date命令用于显示当前系统时间。
    • >>是追加输出重定向符号,将当前时间追加到当前用户主目录下的d.txt文件中。
  • 6) who | wc -l >> ~/d.txt
    • who命令用于显示当前登录系统的用户信息。
    • wc -l用于统计行数,这里统计who命令输出的行数,即当前用户个数。
    • >>将统计结果追加到d.txt文件。
  • 7) ln -s ~/d.txt /tmp/e.txt
    • ln命令用于创建链接。
    • -s选项表示创建软链接。
    • ~/d.txt是源文件路径(当前用户主目录下的d.txt文件),/tmp/e.txt是软链接的目标路径。
  • 8) tar -cvf tmp.tar /tmp
    • tar是打包工具。
    • -c选项表示创建新的归档文件。
    • -v选项表示显示详细信息。
    • -f选项指定归档文件名,这里是tmp.tar,最后指定要打包的目录/tmp
  • 9) ps -ef | grep vsftpd
    • ps -ef命令用于查看系统中所有进程的详细信息。
    • grep vsftpd用于过滤出包含vsftpd的进程信息,即查看进程名为vsftpd的进程信息。
  • 10) find /usr -name "*.xml"
    • find命令用于在指定目录下查找文件。
    • /usr是要查找的起始目录。
    • -name "*.xml"表示查找文件名以.xml结尾的文件。

2、根据下面的依赖关系图,写出对应的makefile文件内容。

main: a.o main.o b.o
        gcc -o main a.o main.o b.o

a.o: f1/a.c f1/a.h
        gcc -c f1/a.c

main.o: main.c f1/a.h f2/b.h
        gcc -c main.c

b.o: f2/b.c f2/b.h
        gcc -c f2/b.c

3、系统需要定期做数据库的备份工作,请根据以上描述给出相应的crontab文件内容,不需要编写脚本内容。

# 每月第一天凌晨1点删除/oracle/tmp目录下的dmp文件
0 1 1 * * rm -f /oracle/tmp/*.dmp

# 每月第一天凌晨2点30分以oracle用户执行导出数据脚本
30 2 1 * * su - oracle -c "/home/oracle/exportdata.sh"

# 等待2小时(根据实际情况调整)后打包数据文件
50 4 1 * * tar -cvf /oracle/tmp/datafile.tar /oracle/tmp/*.dmp

# 等待10分钟(根据实际情况调整)后移动压缩文件并修改权限
0 5 1 * * mv /oracle/tmp/datafile.tar /oracle/backup/ && chmod 400 /oracle/backup/datafile.tar

样卷2

一、选择题

1、通过指定gcc的_____选项,可以指定生成的可执行文件名。

-o,选A

2、文件类型标识d表示的是_____。

  • A.普通文件无前缀标识
  • B.设备文件分为字符设备文件(用c表示)和块设备文件(用b表示)
  • C.目录文件用d表示
  • D.链接文件分为软链接(用l表示)和硬链接(无特殊标识)

3、为了要找到服务名和端口号的映射关系,需要查看_____。

  • A./etc/hosts文件主要用于本地主机名解析,将主机名映射到IP地址,它不涉及服务名和端口号的映射关系。
  • B./etc/services文件包含了常见网络服务与它们所使用端口号的映射关系,通过查看该文件可以找到服务名对应的端口号。
  • C./etc/protocols文件定义了系统支持的网络协议,如TCP、UDP等协议的相关信息,而不是服务名和端口号的映射。
  • D./etc/sysconfig/network文件主要用于配置网络相关的基本设置,如主机名、网关等,与服务名和端口号映射无关。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2261455.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

学习threejs,区域光THREE.AreaLight效果

👨‍⚕️ 主页: gis分享者 👨‍⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨‍⚕️ 收录于专栏:threejs gis工程师 文章目录 一、🍀前言1.1 ☘️THREE.AreaLight 区域光 二…

RabbitMQ消息队列的笔记

Rabbit与Java相结合 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId> </dependency> 在配置文件中编写关于rabbitmq的配置 rabbitmq:host: 192.168.190.132 /…

VSCode,Anaconda,JupyterNotebook

文章目录 一. 下载VSCode并安装二. 下载Anaconda并安装1. anaconda介绍2. Anaconda的包管理功能3. Anaconda的虚拟环境管理4.Jupyter Notebook5. Jupyter Notebook使用简介6. Jupyter Notebook快捷键7.Jupyter notebook的功能扩展8. Jupyter notebook和Jupyter lab的区别 三. V…

动态导出word文件支持转pdf

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、功能说明二、使用步骤1.controller2.工具类 DocumentUtil 导出样式 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff…

那些不属性的C语言关键字-const

大家都知道const修饰的变量是不可变的&#xff0c;但是到底是怎么实现的那&#xff0c;有方法修改只读变量的值吗&#xff0c;今天我们结合实验代码&#xff0c;分析下const关键字的实现原理 const变量 1.const修饰局部变量 int main(){const int abc 123;printf("%d\…

【Java 数据结构】List -> 给我一个接口!!!

&#x1f525;博客主页&#x1f525;&#xff1a;【 坊钰_CSDN博客 】 欢迎各位点赞&#x1f44d;评论✍收藏⭐ 目录 1. 什么是 List 2. List 常用的方法 3. List 的使用 1. 什么是 List 其实 List 是一个接口&#xff0c;它继承了 Collection 接口 下列为 List 接口中的各种…

【5G】5G的主要架构选项

最初&#xff0c;在3GPP讨论中考虑了所有可能的聚合和核心网络组合&#xff0c;共有八个架构选项。以下重点介绍option2、3、4和7。 1. 独立组网 (Standalone, SA) 架构选项 2 &#xff1a;Standalone architecture with 5G-core 特点&#xff1a; 5G核心网&#xff08;5GC, …

Ajax简单理解

Ajax 1 什么是ajax AJAXAsynchronous JavaScript and XML (异步的JavaScript和XML)AJAX不是新的编程语言&#xff0c;二十一种使用现有标准的新方法 AJAX 最大的优点是在不重新加载整个页面的情况下&#xff0c;可以与服务器交换数据并更新部分网页内容。 AJAX 不需要任何浏…

【GESP】C++二级考试大纲知识点梳理, (2)计算机网络的基本概念及分类

GESP C二级官方考试大纲中&#xff0c;共有9条考点&#xff0c;本文针对C&#xff08;2&#xff09;号知识点进行总结梳理。 &#xff08;2&#xff09;了解计算机网络的概念&#xff0c;了解计算机网络的分类&#xff08;广域网&#xff08;WAN&#xff09;、城域网&#xff0…

相机与NAS的奇妙组合,如何使用相机拍照自动上传或备份到NAS

相机与NAS的奇妙组合&#xff0c;如何使用相机拍照自动上传或备份到NAS 哈喽小伙伴们好&#xff0c;我是Stark-C~ 对于喜欢使用专业器材拍照摄影的小伙伴来说&#xff0c;想要将相机存储卡中的照片或视频导出到电脑上&#xff0c;要么是使用数据线直接和相机连接&#xff0c;…

window下的qt5.14.2配置vs2022

这里做一个笔记&#xff0c;已知qt5.14.2和vs2022不兼容&#xff0c;无法自动扫描到vs的编译器。但由于团队协作原因&#xff0c;必须使用qt5.14.2&#xff0c;并且第三方库又依赖vs2022。其实qt5.15.2是支持vs2022的&#xff0c;如果能够用qt5.15.2&#xff0c;还是建议使用qt…

QT从入门到精通(一)——Qlabel介绍与使用

1. QT介绍——代码测试 Qt 是一个跨平台的应用程序开发框架&#xff0c;广泛用于开发图形用户界面&#xff08;GUI&#xff09;应用程序&#xff0c;也支持非图形应用程序的开发。Qt 提供了一套工具和库&#xff0c;使得开发者能够高效地构建高性能、可移植的应用程序。以下是…

【协作笔记Trilium Notes Docker部署】开源协作笔记Trilium Notes本地Docker部署远程协作

文章目录 前言1. 安装docker与docker-compose2. 启动容器运行镜像3. 本地访问测试4.安装内网穿透5. 创建公网地址6. 创建固定公网地址 前言 今天分享一款在G站获得了26K的强大的开源在线协作笔记软件&#xff0c;Trilium Notes的中文版如何在Linux环境使用docker本地部署&…

app的测试范围以及web和app的测试区别

目录 图1.App的测试范围1.1功能测试1.2专项测试1.3性能测试 2.Web和App的测试区别2.1相同点2.2不同点 &#x1f44d; 点赞&#xff0c;你的认可是我创作的动力&#xff01; ⭐️ 收藏&#xff0c;你的青睐是我努力的方向&#xff01; ✏️ 评论&#xff0c;你的意见是我进步的…

数据分析实战—鸢尾花数据分类

1.实战内容 (1) 加载鸢尾花数据集(iris.txt)并存到iris_df中,使用seaborn.lmplot寻找class&#xff08;种类&#xff09;项中的异常值&#xff0c;其他异常值也同时处理 。 import pandas as pd from sklearn.datasets import load_iris pd.set_option(display.max_columns, N…

docker 拉取镜像 | 创建容器 | 容器运行

拉取镜像 拉取镜像的命令&#xff1a;docker pull name &#xff08;name换为你要拉取的镜像名&#xff09; docker pull docker.1panel.live/hispark/qiankunbp:1.0.0 docker.1panel.live/hispark/qiankunbp:1.0.0为镜像名 拉取海思的镜像&#xff1a;&#xff08;如果之前拉…

添加标签(vue3)

点击添加按钮&#xff1a; 最多添加5个 注意&#xff1a; 不只可以el-form 进行校验&#xff0c;也可以对单个el-form-item 进行校验 vue elementUI form组件动态添加el-form-item并且动态添加rules必填项校验方法-CSDN博客 el-form 里边有el-form-item &#xff0c;el-fo…

Dash for Mac 代码API文档管理软件安装

Mac分享吧 文章目录 Dash for Mac 代码API文档管理软件 效果图展示一、Dash 代码API文档管理软件 Mac电脑版——v7.3.31️⃣&#xff1a;下载软件2️⃣&#xff1a;安装软件2.1 左侧安装包拖入右侧文件夹中&#xff0c;等待安装完成&#xff0c;运行软件2.2 打开软件&#xff…

Unity添加newtonsoft-json

package name "com.unity.nuget.newtonsoft-json": "3.2.1",打开包管理器 输入包名称和版本 点击添加

分布式全文检索引擎ElasticSearch-数据的写入存储底层原理

一、数据写入的核心流程 当向 ES 索引写入数据时&#xff0c;整体流程如下&#xff1a; 1、客户端发送写入请求 客户端向 ES 集群的任意节点&#xff08;称为协调节点&#xff0c;Coordinating Node&#xff09;发送一个写入请求&#xff0c;比如 index&#xff08;插入或更…