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

文章目录:html

扩展linux

1.Linux操做系统试题答案面试

2.Linux操做系统命令大全shell

3.Linux操做系统习题卷子编程

4.Linux操做系统复习资料ubuntu

5. Linux操做系统期末试题windows

6.Linux操做系统简答题安全


第一章:初始Linuxbash

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、ext二、ext三、ext四、ISO9660、XFS、Minx、MSDOS、UMSDOS、VFAT、NTFS、HPFS、NFS、SMB、SysV、PROC等
一、ext
        专门为linux核心作的的第一个文件系统。单个文件最大限制:未知;该文件系统最大支持2GB的容量。
二、ext2
         由Rémy Card设计,用以代替ext,是LINUX内核所用的文件系统。单个文件最大限制2TB;该文件系统最大支持32TB的容量。
三、ext3
         一个日志文件系统。单个文件最大限制16TB,该文件系统最大支持32TB的容量。
四、ext4
        Theodore Tso领导的开发团队实现,Linux系统下的日志文件系统。单个文件最大限制16TB,该文件系统最大支持1EB的容量。
五、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

相关文章
相关标签/搜索