何绍华Linux操作系统第3版章节课后答案习题

文章目录:

扩展

1.Linux操作系统试题答案

2.Linux操作系统命令大全

3.Linux操作系统习题卷子

4.Linux操作系统复习资料

5. Linux操作系统期末试题

6.Linux操作系统简答题


第一章:初始Linux

1.Linux是在_____版权协议下发行的,遵循______标准的操作系统内核

2.Linux内核的作者是_____

3.请列举至少五个Linux发行版

 4.简述Linux内核和Linux发行版的区别


第二章:安装Linux 操作系统

1.Linux可以通过_____、_____和_____等多种介质进行安装

2.Red Hat Enterprise Linux 提供的引导安装程序有_____和_____

3.试比较图形化安装模式和文本安装模式的特点


第三章:图形界面与命令行

1.X Window 是一套基于_____架构的视窗系统,于1984年在麻省理工学院(MIT)计算机科学研究室开始开发。

2.X Window由____、____和____三部分组成。

3.下面不是KDE组件的程序是 ()

4.下面不是Linux桌面的有() 

5.列举常用的Linux Shell,至少四种 

6.简述如何从GNOME切换到虚拟终端 

7.如何在虚拟终端使用帮助


第四章:文件管理与常用命令

1.Linux 下的文件可以分为五种不同的类型,分别是:____、____、____、____和____

2.通常,root文件的主目录为____

3.用于存放系统配置文件的目录是()

4.通常,Linux 下的可执行程序位于下列哪些目录? () 

5.Linux 下重命名文件可以用下列哪个命令() 

6.Linux下移除目录可用如下哪些命令?() 

7.比较文件的异同可以使用哪些命令? 

8.要使默认的新文件可以由创建者和同组用户读写,但不可由非同组用户读取或写入,则应该设定umask为多少?

9.下列命令中,无法对文件进行压缩的是()

10.将当前用户主目录打包成tar.gz格式备份,并将该文件权限设为666 

11.在当前目录下创建backup目录,并将上题中的tar.gz 文件解压缩到该目录 

12.上题中,要显示含权限信息的backup目录内容可用下面哪个命令?()


第五章:用户与用户组权限

1.下面哪些文件和用户组账号有关() 

2.root 的UID通常为____

3.删除用户使用的命令是()

4.默认情况下,root 用户组属于以下哪个用户组?() 

5.普通用户如何修改密码? 

6.如何为新增用户指定用户主目录? 

7.删除一个用户组,会删除该用户组下的用户吗? 


第六章:软件包管理

1.RPM软件包管理可以完成查询、____、____、____、验证,以及源代码分发等多项任务,极大地方便了Linux的使用

2.RPM软件包文件名中一般包括____、____、发行号和____等信息

3.查询RPM软件包的命令为() 

4.什么是软件包的依赖关系? 

5.如何测试软件包能否正确安装?

6.rpm-Uvh可以用于安装新软件吗? 

7.卸载软件包时的依赖关系是怎么产生的? 

8.为什么要为RPM软件包添加数字签名?简述实现方法


第七章:Linux磁盘管理

1.请列举5种Linux支持的文件系统

2.在Red Hat Enterprise Linux 7.3下,第2块IDE硬盘的第1个扩展分区对应的设备名称是什么?

3.Linux下挂载分区和windows有何不同?

4.下面能查看磁盘空间使用率的有____

5.可以将分区格式化为vfat的命令有____

6.简述对磁盘进行配额管理的意义何方法


第八章:Linux编程

1.vi有3种基本工作模式:____、____和____

2.从命令模式转换到编辑模式的方法是什么?

3.如果未进行指定输出文件名,gcc编译出来的程序后缀是一个名为____的可执行文件

4.下面Linux程序中哪一个是调试器?

5.为什么要使用make和Makefile?

6.简述通过编译源代码安装程序的方法


第九章:进程管理

1.通常在操作系统中,进程至少要有3种基本状态,分别为____、____和____

2.在Linux系统中,进程的执行模式划分为____和____

3.什么是守护进程

4.指定周期性执行的计划任务需要使用下面的哪些命令?

5.下面哪些快捷键可以迅速终止前台运行的进程?

6.简述PS命令和top命令的区别

7.简述kill和killall的区别


第十章:shell编程

1.简述输入/输出重定向和管道的含义

2.简述shell里双引号(‘’)、单引号(‘)、倒引号(·)之间的区别

3.下面哪些是合法的变量名?

4.下面哪种是正确的赋值方法?

5.试比较shell程序和C程序语法上的异同

6.编写一个shell脚本,计算100以内不是5整数倍的数字的和

7.编写一个shell脚本,自动将用户主目录下所有小于5KB的文件打包成tar.gz(提示:需要配合使用ls和grep命令)


第十一章:Linux服务器配置

1.什么是DNS服务器?

2.从命令行模式转换到编辑模式的方法是什么?

3.下面不是KDE组件的程序是____

4.下面不是Linux桌面的有____

5.请例举常用的Linux shell,至少4种

6.如何从GNOME切换到虚拟终端?

7.如何在虚拟终端使用帮助?


扩展

25个Linux相关的网站

ubuntuhttps://linux.ubuntu.org.cn/

1.Linux操作系统试题答案

linux试题与答案【8页】

linux系统编程试卷(答案)【9页】

Linux课后习题答案【9页】

《Linux操作系统》部分习题答案【12页】

linux操作系统答案【20页】

linux试题及答案要点【25页】

2.Linux操作系统命令大全

linux命令大全【4页】
linux命令大全【6页】
linux命令大全【11页】
linux命令大全【12页】
linux命令大全【17页】
linux命令大全【49页】
linux命令大全【58页】
LINUX命令大全文档【63页】
LINUX命令大全【119页】
Linux命令大全【136页】

3.Linux操作系统习题卷子

linux1-5习题1

linux基础试题

linux操作练习题

linux操作练习题

Linux考试题附答案

Linux期末考试模拟试题

Linux基本操作练习题整理

LINUX教程试题及答案【4页】

Linux测试题(含答案)【5页】

linux操作习题0附答案【7页】

Linux 基本操作练习题【9页】

linux试题及答案【11页】

Linux笔试题及答案【13页】

Linux试题及答案【15页】

LINUX试题及参考答案【17页】

大学考试的LINUX试题及参考答案【38页】

4.Linux操作系统复习资料

linux操作系统复习资料【3页】

Linux操作系统课后习题答案及复习要点【4页】

Linux操作系统期末复习题 【4页】

LINUX复习题参考答案【10页】

linux复习资料孟林【12页】

Linux课复习资料【15页】

Linux期末复习(有参考答案)【15页】

最新linux复习资料【40页】

5. Linux操作系统期末试题

Linux 教程-期末复习试题及参考答案【3页】
《Linux教程》期末试卷及答案【3页】
南京大学《Linux教程》课程期末试卷附答案)【5页】
《Linux教程》期末试题及参考答案【5页】
西安交通大学《Linux教程》课程期末试卷及答案【7页】
Linux教程-期末复习试题及答案【8页】
北京大学《Linux教程》期末试卷试题及答案【10页】
Linux_期末考试试题2套(含答案)【13页】
Linux_期末考试试题8套(含答案)【36页】

6.Linux操作系统简答题

linux简答题【2页】

linux面试题(简答题部分)【4页】

Linux笔试题(简答题)【6页】

linux简答题【6页】

Linux简答题【8页】

Linux简答题【9页】

第一章:初始Linux

1.Linux是在_____版权协议下发行的,遵循______标准的操作系统内核

答案:GNU         POSIX

2.Linux内核的作者是_____

答案:Linus Torvalds

3.请列举至少五个Linux发行版

答案:

Fedora Core/RedHat Enterprise Linux; SuSE Linux/Open SuSE; 
Mandriva Linux; Ubuntn Linux; Debian; Slackware ; Gentoo

 4.简述Linux内核和Linux发行版的区别

答案:发行版是为了安装方便,将各种软件集合起来,与操作系统核心(Linux)内核一起包装在一块

第二章:安装Linux 操作系统

1.Linux可以通过_____、_____和_____等多种介质进行安装

答案:光盘安装、硬盘安装、网络安装

2.Red Hat Enterprise Linux 提供的引导安装程序有_____和_____

答案:光盘启动安装和虚拟机启动安装

3.试比较图形化安装模式和文本安装模式的特点

答案:

图形化安装模式

文本安装模式

安装速度相对较慢

安装速度相对较快

鼠标操作方便

键盘操作

提示较多

提示较少

第三章:图形界面与命令行

1.X Window 是一套基于_____架构的视窗系统,于1984年在麻省理工学院(MIT)计算机科学研究室开始开发。

答案:服务器/客户端

2.X Window由____、____和____三部分组成。

答案:服务器(Server)、客户端)(Client)、通信协议(XProtocal)

3.下面不是KDE组件的程序是 ()

A Konqueror B Nautilus C KOffice D KDevelop

答案:B

4.下面不是Linux桌面的有() 

A KDE      B  GNOME     C  XFCE   D Bash

答案:D

5.列举常用的Linux Shell,至少四种 

答案:Bourne Shell  ; C Shell  ;Korn   Shell  ; POSIX Shell  ;  Bourne  Again  Shell

6.简述如何从GNOME切换到虚拟终端 

答案:使用GNOME终端仿真器  单击“应用程序”|“系统工具”|“终端”命令

7.如何在虚拟终端使用帮助

答案:“使用man命令”,使用“info”命令

第四章:文件管理与常用命令

1.Linux 下的文件可以分为五种不同的类型,分别是:____、____、____、____和____

答案:普通文件,目录文件,链接文件,设备文件、管道文件

2.通常,root文件的主目录为____

答案:/root

3.用于存放系统配置文件的目录是()

A /etc B /home C /var D /root

答案:A

4.通常,Linux 下的可执行程序位于下列哪些目录? ()

A /bin  B /home  C /sbin  D /usr/bin  E/var   F /usr/bin 

答案:F

5.Linux 下重命名文件可以用下列哪个命令()

A .re      B . Is    C.mv     D.copy 

答案:C

6.Linux下移除目录可用如下哪些命令?() 

A . mv  B.del  C. rm  D.deltree  E . redir   F. mkdir 

答案:ACF

7.比较文件的异同可以使用哪些命令? 

答案:comm  diff  命令

8.要使默认的新文件可以由创建者和同组用户读写,但不可由非同组用户读取或写入,则应该设定umask为多少?

 答案:022

9.下列命令中,无法对文件进行压缩的是()

A.tar  B.less  C.mv   D.bzip2  E.gzip  F. Is  G .zip  H. Locate  I .cat  

答案:BCFHI

10.将当前用户主目录打包成tar.gz格式备份,并将该文件权限设为666 

答案:  tar –cf etc.tar.gz                    chmod  666  etc.tar.gz

11.在当前目录下创建backup目录,并将上题中的tar.gz 文件解压缩到该目录 

答案: mkdir backup    tar-xf etc.tar.gz

12.上题中,要显示含权限信息的backup目录内容可用下面哪个命令?()

 A. Is./backup   B. Is-A./backup   C . Is-la ./backup   D . Is –r./backup

答案:B

第五章:用户与用户组权限

1.下面哪些文件和用户组账号有关() 

A. /etc/password   B. /etc/shadow  C. /etc/shadow  D. /etc/gpassword

答案:AB

2.root 的UID通常为____

答案:0

3.删除用户使用的命令是()

 A、delusr  B . userdel    C.  usrdel   D. delete  user

答案:B

4.默认情况下,root 用户组属于以下哪个用户组?() 

A. user   B. admin  C. root   D. system 

答案:C

5.普通用户如何修改密码? 

答案:使用不带参数的passwd命令修改自己的口令

6.如何为新增用户指定用户主目录? 

答案:使用命令行方式:usermod –d home_dir  
        使用图形界面管理:选定[用户管理者]中的[用户]标签下要修改的用户,双击该区域或者单击工具栏中的[属性]按钮,在弹出的[属性对话框]中单击[用户数据]标签,在[主目录]中输入相应文件名即可

7.删除一个用户组,会删除该用户组下的用户吗? 

答案:会 

第六章:软件包管理

1.RPM软件包管理可以完成查询、____、____、____、验证,以及源代码分发等多项任务,极大地方便了Linux的使用

答案:安装、卸载、升级

2.RPM软件包文件名中一般包括____、____、发行号和____等信息

答案:软件名称、版本号、硬件平台

3.查询RPM软件包的命令为() 

A. rpm-q   B . rpm-s    C. rpm-I   D. rpm-query

答案:A

4.什么是软件包的依赖关系? 

答案:要求在只有安装特定的软件包之后才能正常安装该软件包。 

5.如何测试软件包能否正确安装?

答案:选用测试安装,实际上并未安装,如果没有显示错误信息再实际安装

6.rpm-Uvh可以用于安装新软件吗? 

答案:不能。rpm-Uvh是用于软件包的升级,即用新版本软件包代替旧版本软件包 

7.卸载软件包时的依赖关系是怎么产生的? 

答案:如果存在其他软件包依赖于用户要卸载的软件包,卸载时会产生错误信息,即卸载软件包时的依赖关系

8.为什么要为RPM软件包添加数字签名?简述实现方法

答案: 为了提高Linux下软件的安全性,RPM软件包还可以使用数字签名的身份认证技术。软件包增加数字签名后,其他用户可以通过校验其签名辨其真伪,从而判断软件包是否原装和是否被修改过。 
实现方法: rpm—resign  rpm1  [rpm2] 用于为rpm软件包重新签名 
rpm—addsign  用于为rpm包添加数字签名

第七章:Linux磁盘管理

1.请列举5种Linux支持的文件系统

答案:

比如Btrfs、baiJFS、ReiserFS、ext、ext2、ext3、ext4、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等
1、ext
        专门为linux核心做的的第一个文件系统。单个文件最大限制:未知;该文件系统最大支持2GB的容量。
2、ext2
         由Rémy Card设计,用以代替ext,是LINUX内核所用的文件系统。单个文件最大限制2TB;该文件系统最大支持32TB的容量。
3、ext3
         一个日志文件系统。单个文件最大限制16TB,该文件系统最大支持32TB的容量。
4、ext4
        Theodore Tso领导的开发团队实现,Linux系统下的日志文件系统。单个文件最大限制16TB,该文件系统最大支持1EB的容量。
5、JFS2
       一种字节级日志文件系统,该文件系统主要是为满足服务器的高吞吐量和可靠性需求而设计、开发的。单个文件最大限制16TB,该文件系统最大支持1PB的容量。

       注意事项:这里仅对这些文件系统的当文件大小的最大限制和文件系统的最大容量进行了说明,并没有说明其性能的对比情况。

2.在Red Hat Enterprise Linux 7.3下,第2块IDE硬盘的第1个扩展分区对应的设备名称是什么?

答案:第二块IDE硬盘hdb

第一块IDE硬盘hda;第二块IDE硬盘hdb;第三块IDE硬盘hdd

3.Linux下挂载分区和windows有何不同?

答案:结构上不同:linux使用的树形结构;windows 使用的交叉式【待补充】

4.下面能查看磁盘空间使用率的有____

A .mount        B.umount        C.df           D.fdisk  -l

答案:C

5.可以将分区格式化为vfat的命令有____

A .mkfs.vfat        B.mkvfatfs        C.mkfs -t vfat           D.mkfs.ext2

答案:C

6.简述对磁盘进行配额管理的意义何方法

答案:

(1)意义:保护系统有效利用磁盘空间;
(2)方法:按用户进行限制和对用户组进行限制,包括硬限制和软限制

第八章:Linux编程

1.vi有3种基本工作模式:____、____和____

答案:一般模式、编辑模式、指令模式

VIMç¼è¾å¨æåª3ç§å·¥ä½æ¨¡å¼

2.从命令模式转换到编辑模式的方法是什么?

答案:

i 在光标所在位置的前面插入字符
I 在当前行的最前面插入字符
A 在当前行的最后面插入字符
o 允许我们从现有行之后开始一个新行
O 允许我们从现有行之前插入一个新行

3.如果未进行指定输出文件名,gcc编译出来的程序后缀是一个名为____的可执行文件

答案:a.out

4.下面Linux程序中哪一个是调试器?

A .vi        B.gcc        C.gdb           D.make

答案:C

5.为什么要使用make和Makefile?

答案:

make makefile
make和makefile的关系是:make是一个命令工具,是一个解释makefile中指令的命令工具,一般来说,大多数的IDE都有这个命令
根据Makefile文件编译源代码、连接、生成目标文件、可执行文件

makefile定义了一系列的规则来指定,哪些文件需要先编译,哪些文件需要后编译,哪些文件需要重新编译,甚至于进行更复杂的功能操作,因为 makefile就像一个Shell脚本一样,其中也可以执行操作系统的命令。

makefile带来的好处就是--“自动化编译”,一旦写好,只需要一个make命令,整个工程完全自动编译,极大的提高了软件开发的效率。

6.简述通过编译源代码安装程序的方法

答案:

通过官方网站下载最新版本的源代码
解包软件dao tar zxf xxxx.tgz
配置 cd xxx
./configure ....
编译 make
安装与卸载 make install
make uninstall
清理 make clean
Linux程序包管理--源码编译的原理和基本方法

第九章:进程管理

1.通常在操作系统中,进程至少要有3种基本状态,分别为____、____和____

答案:运行状态、就绪状态、等待状态

2.在Linux系统中,进程的执行模式划分为____和____

答案:用户模式、内核模式

3.什么是守护进程

答案:守护进程(Daemon Process),也就是通常说的 Daemon 进程(精灵进程),是 Linux 中的后台服务进程。它是一个生存期较长的进程,,没有控制终端,通常独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。

4.指定周期性执行的计划任务需要使用下面的哪些命令?

A. at B. cron C. cronjob D. batch

答案:B

5.下面哪些快捷键可以迅速终止前台运行的进程?

A.Ctrl+A      B. Ctrl+C       C. Ctrl+Q       D. Ctrl+Z 

答案:B

6.简述PS命令和top命令的区别

答案:

 

ps命令

top命令

实时性 系统在过去执行的进程的静态快照,也就是说ps命令能够查看刚刚系统的进程信息 反应的是系统进程动态信息,默认10s更新一次,可以用ps -d指定屏幕刷新的延迟时间
交互性 允许用户输入控制命令, 允许用户输入控制命令,top命令的模式下输入n5,就显示如图的此时的5个最活跃的进程,top会持续运行直到用户按下"q",退出top
在Linux系统中ps和top命令都是用来查看进程信息的
  查看进程的瞬间信息 持续地监视进程的信息
  只是查看进程,关注点在于查看需要查看的进程 只是查看进程;还可以监视系统性能,如平均负载,cpu和内存的消耗;另外top还可以操作进程,如改变优先级(命令r)和关闭进程(命令k);主要看cpu,内存使用情况,及占用资源最多的进程由高到低排序,关注点在于资源占用情况

7.简述kill和killall的区别

答案:

  kill killall
杀死进程对象

进程ID

kill -9 proc_id

进程名子

killall -9 proc_name

第十章:shell编程

1.简述输入/输出重定向和管道的含义

答案:bash shell提供了一些特殊的操作符来将某个命令的输出重定向到另一个位置

输出重定向:把<右边的文件的内容输入到<左边的命令中

大于号(>)会将命令的结果以新建或覆盖的方式重定向到一个文件中。

双大于号(>>)会将命令的结果以追加的方式重定向到一个文件中

输入重定向把运行>左边命令得出的结果输入到>右边的文件中

小于号(<)会将文件的数据重定向到命令

qaperf@hzbxs-perftest13:~/linsa$ wc < dd.txt
 5  5 24

双小于号(<<)称为内联输入重定向,它的含义是允许你在命令行而不是在文件中指定输入重定向的数据

qaperf@hzbxs-perftest13:~/linsa$ wc << endflag
> test string 1
> test string 2
> endflag
 2  6 28

如上图,<<指定wc命令的输入数据为下面的

test string 1

test string 2

其中endflag是自定义约定好的输入结束标志

管道:将“重定向”又向前推了一步。通过一个“|”,将一个命令的输出连接到另一个命令的输入

管道(|)可以将一个命令的输出作为另一个命令的输入

linux系统会同时运行管道两边的命令,在系统内部将他们连接起来,在一个命令产生输出的同时,输出会被立即送往第二个命令,传输数据不会使用任何中间文件或缓冲区区域

在ls查看文件列表时,常用管道|分页命令more来分屏显示内容,以防止输出数据在屏幕上一闪而过

2.简述shell里双引号(‘’)、单引号(‘)、倒引号(·)之间的区别

答案:

单引号

单引号中的字符串 Shell 不会做任何处理,在需要保持字符串原样不变的时候使用

将单引号中的值一模一样的输出

#! /bin/bash
a=yveshe
echo '$a'   #将单引号中的值一模一样的输出,输出结果为: $a

双引号

双引号中的字符串 Shell 会进行处理,若其中含有可以求值的部分,会被 Shell 替换为求值的结果,其中包含变量、表达式或命令。

将变量的值输出

#! /bin/bash

a=yveshe
echo "$a"   #将变量a的值输出,输出结果为: yveshe

倒引号

倒引号比较特殊,它一般用来引用一条命令,并且将这个命令的输出结果(输出到标准输出上)作为这个字符串最终的值,作用于符号“$()”相同。

在反引号中或者在$()符号中的命令的输出会被当作字符串的实际内容。如果反引号引用的命令出现在双引号字符串中,这部分也会被替换为命令的输出

命令替换是指shell能够将一个命令的标准输出插在一个命令行中任何位置。shell中有两种方法作命令替换:把shell命令用反引号或者$(...)结构括起来,其中,$(...)格式受到POSIX标准支持,也利于嵌套。

和$()是一样的。在执行一条命令时,会先将其中的 ``,或者是$() 中的语句当作命令执行一遍,再将结果加入到原命令中重新执行

倒引号中是放置的是要执行的shell命令

#! /bin/bash

echo `pwd`   #倒引号中是放置的是要执行的shell命令,在/root下执行时输出结果为: /root

其中倒引号可以在双引号里面使用,比如

echo "'pwd'"
echo `ls`
会先执行 ls 得到xx.sh等,再替换原命令为:
echo xx.sh
最后执行结果为
xx.sh

3.下面哪些是合法的变量名?

A、kitty     B 、bOOK  C、Hello World    D 、Olympic_game   E 、2cat    F 、%goods       G 、if      H 、_game

答案:ABDH

4.下面哪种是正确的赋值方法?

A、a=abc     B、a =abc     C、a=       abc    D、a="abc"

答案:A

5.试比较shell程序和C程序语法上的异同

答案:

要实现的功能

C语言编程

Linux Shell脚本编程

程序/脚本的参数传递

int main(int argc, char** argv)

{

if (argv != 4) {

    printf( “Usage: %s arg1 arg2 arg3”, argv[0] );

    return 1;

}

printf(“arg1:%s/n”,argv[1]);

printf(“arg2:%s/n”,argv[2]);

printf(“arg3:%s/n”,argv[3]);

return 0;

}

#!/bin/sh

if [ $# -lt 3 ]; then

    echo "Usage: `basename $0` arg1 arg2 arg3" >&2

    exit 1

fi

echo "arg1: $1"

echo "arg2: $2"

echo "arg3: $3"

exit 0

int main(int argc, char** argv)

{

    int i;

for (i=1; i<=argc;i++) {

printf(“arg:%s/n”,argv[i]);

}

return 0;

}

#!/bin/sh

while [ $# -ne 0 ]

do

    echo "arg: $1"

    shift

done

逻辑/数值运算

if (d == 0)

if [ "$D" -eq "0" ] ; then

if (d != 0)

if [ "$D" -ne "0" ] ; then

if (d > 0)

if [ "$D" -gt "0" ] ; then

if (d < 0)

if [ "$D" -lt "0" ] ; then

if (d <= 0)

if [ "$D" -le "0" ] ; then

if (d >= 0)

if [ "$D" -ge "0" ] ; then

字符串比较

if (strcmp(str,”abc”)==0) {

}

if [ "$STR" != "abc" ]; then

fi

输入和输出

scanf(“%d”,&D);

read D

printf( “%d”, D);

echo –n $D

printf( “%d”,D);

echo $D

printf( “Press any to continue...”);

char ch=getchar();

printf( “/nyou pressed: %c/n”, ch );

#!/bin/sh

getchar()

{

SAVEDTTY=`stty -g`

stty cbreak

dd if=/dev/tty bs=1 count=1 2> /dev/null

stty -cbreak

stty $SAVEDTTY

}

echo -n "Press any key to continue..."

CH=`getchar`

echo ""

echo "you pressed: $CH"

read D <&3

程序/脚本的控制流程

if (isOK) {

    //1

} else if (isOK2) {

    //2

} else {

    //3

}

if [ isOK ]; then

    #1

elif [ isOK2 ]; then

    #2

else

    #3

fi

switch (d)

{

case 1:

printf(“you select 1/n”);

break;

case 2:

case 3:

printf(“you select 2 or 3/n”);

break;

default:

printf(“error/n”);

break;

};

case $D in

1) echo "you select 1"

    ;;

2|3) echo "you select 2 or 3"

    ;;

*) echo "error"

    ;;

esac

for (int loop=1; loop<=5;loop++) {

     printf( “%d”, loop);

}

for loop in 1 2 3 4 5

do

    echo $loop

done

do {

    sleep(5);

} while( !isRoot );

IS_ROOT=`who | grep root`

until [ "$IS_ROOT" ]

do

    sleep 5

done

counter=0;

while( counter < 5 ) {

printf( “%d/n”, counter);

counter++;

}

COUNTER=0

while [ $COUNTER -lt 5 ]

do

echo $COUNTER

    COUNTER=`expr $COUNTER + 1`

done

while (1) {

}

while :

do

done

break;

break或break n,n表示跳出n级循环

continue;

continue

函数与过程的定义

void hello()

{

    printf( “hello/n” );

}

//函数调用

hello();

hello()

{

    Echo “hello”

} 或者

function hello()

{

    Echo “hello”

}

#函数调用

hello

函数的参数和返回值

int ret = doIt();

if (ret == 0) {

    printf( “OK/n” );

}

doIt

if [ “$?” –eq 0 ] ; then

echo “OK”

fi

或者

RET = doIt

if [ “$RET” –eq “0” ] ; then

echo “OK”

fi

int sum(int a,int b)

{

return a+b;

}

int s = sum(1,2);

printf(“the sum is: %d/n”, s);

sum()

{

    echo -n "`expr $1 + $2`"

}

S=`sum 1 2`

echo "the sum is: $S"

bool isOK() { return false; }

if (isOK) {

    printf( “YES/n” );

} else {

    printf( “NO/n” );

}

isOK()

{

    return 1;

}

if isOK ; then

    echo "YES"

else

    echo "NO"

fi

6.编写一个shell脚本,计算100以内不是5整数倍的数字的和

答案:

代码实现

#!bai/bin/sh
a=0
for((i=1;i<=$1;i++))
do
if [[ i%5 -ne 0 ]]
then
a=$((a+i))
fi
done
echo $a
1 #! /bin/bash
2 sum=0
3 for i in `seq 1 100`; do
4 sum=$[$i+$sum]
5 done
6 echo $sum

 测试结果

$ ./test.sh 100
4000
$ ./test.sh 98
3901

7.编写一个shell脚本,自动将用户主目录下所有小于5KB的文件打包成tar.gz(提示:需要配合使用ls和grep命令)

答案:

#!/bin/bash
home_path='/home/yifan/maying/shell'  #指定home路径
cd ${home_path}

ls -l | grep ^- | awk '{if($5<5*1024)print $9}' | xargs tar -czf backup.tar.gz 

第十一章:Linux服务器配置

1.什么是DNS服务器?

答案:

DNS(Domain Name Server,域名服务器)是进行域名(domain name)和
与之相对应的baiIP地址 (IP address)转换的服务器。


DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,
以解析消息的域名。 域名是Internet上某一台计算机或计算机组的名称,
用于在数据传输时标识计算机的电子方位(有时也指地理位置)。


域名是由一串用点分隔的名字组成的,通常包含组织名,而且始终包括两到三个字母的后缀,
以指明组织的类型或该域所在的国家或地区。

什么是dns服务器

DNS服务器是什么意思?

2.从命令行模式转换到编辑模式的方法是什么?

答案:

i 在光标所在位置的前面插入字符
I 在当前行的最前面插入字符
A 在当前行的最后面插入字符
o 允许我们从现有行之后开始一个新行
O 允许我们从现有行之前插入一个新行

3.下面不是KDE组件的程序是____

A 、Konqueror             B、Nautilus           C、KOffice             D、KDevelop

答案:B

4.下面不是Linux桌面的有____

A 、KDE            B、GNOME          C、XFCE            D、Bash

答案:D

5.请例举常用的Linux shell,至少4种

答案:Bourne Shell ; C Shell ;Korn Shell ; POSIX Shell ; Bourne Again Shell

6.如何从GNOME切换到虚拟终端?

答案:

第一步,在Ubuntu登录界面选择帐号,输入密码;
第二步,进入Ubuntu主界面;
第三步,ctrl+alt+f2~f6
第四步,进入命令行界面;
第五步,输入登录账户与密码,回车;
第六步,成功登录,如图所示;
第七步,要想回到桌面界面,按下组合键ctri+alt+f7
第八步,可成功回到桌面界面。

如何从图形界面切换到命令界面

7.如何在虚拟终端使用帮助?

答案:man命令
比如你想查看ls命令的用法,终端输入man ls
比如想查看socket系统调用,man 2 socket

猜你喜欢

转载自blog.csdn.net/liu17234050/article/details/109170506