福州大学linux复习.docx

上传人:b****7 文档编号:8954118 上传时间:2023-02-02 格式:DOCX 页数:36 大小:700.88KB
下载 相关 举报
福州大学linux复习.docx_第1页
第1页 / 共36页
福州大学linux复习.docx_第2页
第2页 / 共36页
福州大学linux复习.docx_第3页
第3页 / 共36页
福州大学linux复习.docx_第4页
第4页 / 共36页
福州大学linux复习.docx_第5页
第5页 / 共36页
点击查看更多>>
下载资源
资源描述

福州大学linux复习.docx

《福州大学linux复习.docx》由会员分享,可在线阅读,更多相关《福州大学linux复习.docx(36页珍藏版)》请在冰豆网上搜索。

福州大学linux复习.docx

福州大学linux复习

shell编程时,注释符是#

$temp=’world’;echohello’$temp’

上述命令执行的结果为hello$temp。

如果计算机的内存为128MB,则SWAP分区(交换分区)的大小通常设定为256M。

常用的socket类型有两种:

流式socket(流式套接字,SOCK_STREAM),数据报式socket(数据报式套接字,SOCK_DGRAM)

将文件file1和文件file2连接成文件file3的命令是:

catfile1file2>file3

在shell编程时,如果将测试条件置于方括号内,应注意方括号两边必须有:

空格。

有时用户需要在一行给出多个shell命令,假定输入的命令都需要运行,则在shell提示符下输入命令时,可在命令之间加上符号;。

为了获得父进程的ID号,可是使用函数:

getppid()

在用bash命令调试shell程序时,为了将shell执行的每一个命令行都显示出来,应该使用bash的选项-v

在Linux下调试c程序时,在提示符(gdb)下输入b10表示:

在第10行设置断点。

在用vi编辑好文件后,为了将文件内容存入test..txt文件中并退出vi(开始进入vi时并未输入文件名),应在末行模式下键入:

wqtest.txt或者xtest.txt

Linux中常见的文本编辑器有vi和Emacs

为了将一个命令置于后台运行,需要在命令后面加上符号&

将命令“command”的标准输出重定向到文件“filename”中的方法是:

command>filename

在用vi编辑文件时,为了将文件内容存入test..txt文件中(但不退出vi),应在命令模式下键入:

wtest.txt

1.在创建Linux分区时,一定要创建(D)两个分区

A.FAT/NTFSB.FAT/SWAPC.NTFS/SWAPD.SWAP/根分区

3.当登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么(B)

A.NIDB.PIDC.UIDD.CID

4.下面哪个命令是用来定义shell的全局变量(D)

A.exportfsB.aliasC.exportsD.export

5.哪个目录存放用户密码信息(B)

A./bootB./etcC./varD./dev

13.Linux启动的第一个进程init启动的第一个脚本程序是(B)。

A./etc/rc.d/init.dB./etc/rc.d/rc.sysinitC./etc/rc.d/rc5.dD./etc/rc.d/rc3.d

14.按下(A)键能终止当前运行的命令

A.Ctrl-CB.Ctrl-FC.Ctrl-BD.Ctrl-D

15.下面哪个命令用来启动XWindow(C)

A.runxB.StartxC.startXD.xwin

17.用"rm-i",系统会提示什么来让你确认(B)

A.命令行的每个选项B.是否真的删除C.是否有写的权限D.文件的位置

18.以下哪个命令可以终止一个用户的所有进程(D)

A.skillallB.skillC.killD.killall

19.在RedHatLinux9中,一般用(D)命令来查看网络接口的状态

A.pingB.ipconfigC.winipcfgDifconfig

20.vi中哪条命令是不保存强制退出(C)(第五章)

A.:

wqB.:

wq!

C.:

q!

D.:

quit

21.局域网的网络设备通常有(ABCDE)

A.交换机B.路由器C.网桥D.双绞线E.HUB

22.在下列分区中,Linux默认的分区是(B)

A.FAT32B.EXT3CFATDNTFS

23.若要将鼠标从VM中释放出来,可按(A)键来实现

A.Ctrl+AltB.Ctrl+Alt+DelC.Ctrl+Alt+EnterDCtrl+Enter

24.如果用户想对某一命令详细的了解,可用(C)

A.lsB.help(内部)C.man(列举的信息多)Ddir

26.在Linux系统中,以_文件的_方式访问设备。

28.Linux文件系统中每个文件用__i节点_____来标识。

32.安装Linux系统对硬盘分区时,必须有两种分区类型:

文件系统分区和交换分区。

33.编写的Shell程序运行前必须赋予该脚本文件__执行___权限。

一、选择题(单选题,每小题2分,共20分)

1.用户编写了一个文本文件a.txt,想将该文件名称改为txt.a,下列命令__D____可以实

现。

A.cda.txtxt.aB.echoa.txt>txt.a

C.rma.txttxt.aD.cata.txt>txt.a

3.在使用mkdir命令创建新的目录时,在其父目录不存在时先创建父目录的选项是___D__。

A.-mB.-dC.-fD.-p

4.下面关于i节点描述错误的是__A___。

A.i节点和文件是一一对应的

B.i节点能描述文件占用的块数

C.i节点描述了文件大小和指向数据块的指针

D.通过i节点实现文件的逻辑结构和物理结构的转换

5.在vi编辑器中的命令模式下,重复上一次对编辑的文本进行的操作,可使用__C____命

令。

A.上箭头B.下箭头C.“.”D.“*”

7.在Redhat公司发布的Linux版本中,若要使得用户登录验证,需要修改以下__C____脚

本。

A./etc/inittabB./etc/passwd

C./etc/shadowD./etc/group

8.下列不是Linux系统进程类型的是_D_____。

A.交互进程B.批处理进程C.守护进程D.就绪进程

9.下列关于/etc/fstab文件描述,正确的是___D___。

A.fstab文件只能描述属于linux的文件系统

B.CD_ROM和软盘必须是自动加载的

C.fstab文件中描述的文件系统不能被卸载

D.启动时按fstab文件描述内容加载文件系统

1.安装Linux系统对硬盘分区时,必须有两种分区类型:

Linux原始分区(根分区)和Linux

交换分区。

2.在Linux的两种链接文件中,只能实现对文件链接的一种方式是:

软链接(符号链接)。

4.对于SystemV类型的共享内存页面,Linux基于__Clock____算法决定哪些页面应当被

换出物理内存。

7.将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存

到/home目录下,实现此任务的tar命令格式__tarczvfwang.tar.gz

/home/stud1/wang____。

8.对于给定的文件file,统计其中所有包含字符串”WHU”的行数的一条命令是_grepWHUfile

|wc-l

9.对于Shell脚本程序,若输入参数数量多于9个,则程序遍历每个参数可通过使用

__shift__命令实现。

2.在当前目录/home/zheng下新建一个目录back,将当前目录改为back,在back下新建2

个长度为0的文件test1、test2,然后把test2移到其父目录中并改名为file12。

答:

$mkdirback

$cdback

$touchtest1test2

$mvtest2../file2

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

$find–typef|wc–l

4.假设你是系统管理员,需要增加一个新的用户账号zheng,为新用户设置初始密码,锁

定用户账号uly,并删除用户账号chang。

答:

.#useraddzheng

#passwdzheng

#passwd–luly

#userdelchang

5.若给需要将/home/zheng目录下的所有文件打包压缩成/tmp/zheng.tar.gz,你准备怎么做?

当需要从压缩包中恢复时,又该如何处理?

答:

#tar–zcvf/tmp/zheng.tar.gz/home/zheng

#tar-zxvf/tmp/zheng.tar.gz

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

成的功能。

(8分)

#!

/bin/sh

DIRNAME=`ls/root|grepbak`#

(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)

tarzcvf$BACKETC/etc#(6)

echo"filebackfinished!

"

答:

#

(1)获取/root中名称包含bak的文件或目录

#

(2)判断1结果为空

#(3)创建目录/root/bak并进入该目录

#(4)获取当前时间的年月日

#(5)按照年(2位)月(2位)日(2位)_etc方式构造压缩文件名

#(6)压缩etc目录并保存在/root/bak中6分

程序功能:

若/root/bak不存在则创建之,然后将/etc按日期打包保存于该目录中。

2分

七、设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户

名的形式为stdxx,其中xx从01到30。

(6分)

答:

#!

/bin/sh

i=1

groupaddclass1

while[$i-le30]1分

do

if[$i-le9];then

USERNAME=stu0${i}1分

else

USERNAME=stu${i}1分

fi

useradd$USERNAME1分

mkdir/home/$USERNAME

chown-R$USERNAME/home/$USERNAME1分

chgrp-Rclass1/home/$USERNAME

i=$(($i+1))#或let“i=i+1”1分

done

1.Linux系统的开发模型是__B____。

A.教堂模型B.集市模型C.层次模型D.网状模型

3.__B___属于SYSTEMⅤ进程间通信方式。

A.管道B.信号量C.软中断信号D.锁机制

5.Linux文件系统中,文件在外存的物理地址放在___A___中。

A.i节点B.用户打开文件表

C.系统打开文件表D.进程控制块

7.当字符串用单引号(’’)括起来时,SHELL将__C____。

A.解释引号内的特殊字符B.执行引号中的命令

C.不解释引号内的特殊字符D.结束进程

8./etc/shadow文件中存放_B_____。

A.用户账号基本信息B.用户口令的加密信息

C.用户组信息D.文件系统信息

9.Linux系统中,用户文件描述符0表示____A__。

A.标准输入设备文件描述符B.标准输出设备文件描述符

C.管道文件描述符D.标准错误输出设备文件描述符

10.为卸载一个软件包,应使用___B__。

A.rpm-iB.rpm-eC.rpm-qD.rpm-V

3.Linux为用户提供的接口有shell、XWINDOW、系统调用

六、在Linux系统中运行下面程序,最多可产生多少个进程?

画出进程家族树。

(6分)

main()

{

fork();

fork();

fork();

}

答:

最多可以产生7个进程3分

家族树如右

七、试编写一个SHELL程序,该程序能接收用户从键盘输入的100个整数,然后求出其总和、

最大值及最小值。

(6分)

答:

#!

/bin/sh

readmax

min=$max

sum=$max

i=1

while[$i–lt100]

do

readx

sum=`expr$sum+$x`

if[$max–lt$x]

then

max=$x

fi

if[$x–lt$min]

then

min=$x

fi

i=`expr$i+1`

done

echo"sum=$sum;max=$maxmin=$min"

3.如何快速切换到用户John的主目录下?

()

A.cd@JohnB.cd#JohnC.cd&JohnD.cd~John

4.启动DNS服务的守护进程()

A.httpdstartB.httpdstopC.namedstartD.namedstop

6.REDHATLINUX9默认使用的文件系统类型为()

A.ext2B.ext3C.FATD.swap

8.光盘所使用的文件系统类型为()。

A.ext2B.ext3C.swapD.ISO9660

10.LINUX所有服务的启动脚本都存放在()目录中。

A./etc/rc.d/init.dB./etc/init.dC./etc/rc.d/rcD./etc/rc.d

13.若要将当前目录中的myfile.txt文件压缩成myfile.txt.tar.gz,则实现的命令为

()。

A.tar–cvfmyfile.txtmyfile.txt.tar.gz

B.tar–zcvfmyfile.txtmyfile.txt.tar.gz

C.tar–zcvfmyfile.txt.tar.gzmyfile.txt

D.tar–cvfmyfile.txt.tar.gzmyfile.txt

14.LINUX交换分区的格式为()。

A.ext2B.ext3C.FATD.swap

15.以下文件中,只有root用户才有权存取的是()

A.passwdB.shadowC.groupD.password

 

第1章概述

UNIX的两个重要分支:

SystemV和BSDUNIX,Linux属于BSD分支。

GNU(GNUisnotUNIX)计划——基于自由软件思想

GNU软件是在GNU公共许可证(GPL)的条款下发布的。

POSIX:

不同UNIX类系统之间兼容性的规范。

Linux版本号的命名规则:

Linux的内核版本由3部分组成。

版本号的第二位数字,可以确定Linux内核版本的类型,稳定版本:

第二位数字是偶数

Linux里一切皆文件。

LINUX的组成:

●LINUX的内核:

内核是系统的核心,是运行程序和管理像磁盘和打印机等硬件设备的核心程序。

●LINUXSHELL:

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口

●LINUX文件系统:

Linux文件系统是文件存放在磁盘等存储设备上的组织方法。

Linux能支持多种目前浒的文件系统,如EXT2、EXT3、FAT、VFAT、ISO9660、NFS等。

●LINUX应用系统:

标准的Linux系统都有一整套称为应用程序的程序集。

linux中几个标准特殊目录

/bin二进制文件目录,用于存放启动系统用到的二进制文件。

/usr/bin用户二进制文件目录,用于存放用户使用的标准程序。

/home:

用户目录,包括用户信息等。

/etc:

配置目录,系统配置时使用。

/proc:

虚拟目录,文件系统内存产生。

/root:

超级用户目录,包括桌面管理等。

/usr:

共享目录,所有用户的共享文件。

C语言中,系统调用和库函数的头文件主要在/usr/include目录及子目录下

标准系统库文件一般存储在/lib和/usr/lib目录中。

掌握vi三种模式:

命令模式、输入模式、末行模式的切换;保存退出的几个命令。

Esc,a,i,o,:

/,?

:

q离开

:

w保存

:

q!

强制离开不保存

:

wq保存后离开

 

第2章Shell及其常用命令

Linux终端:

Linux提供6个虚拟终端,XWindow在第7个终端上。

虚拟控制台的选择可以通过按下键和功能键来实现。

在XWindow图形操作界面中按就可以进入控制台字符操作界面。

命令自动补齐:

Shell里头几种特殊的字符含义:

“#”提示符,root用户

“$”提示符符号,普通用户

“*”,代表0到无穷多个任意字符

“?

”,代表一定有一个任意字符

“~”符号,用户的主文件夹

单引号,不具有变量置换功能

双引号,具有变量置换功能

后向的单引号,可以执行命令

重定向符号“<”,

重定向符“>”和

“>>”,

管道“|”。

掌握基本命令:

▪列出目录内容:

ls

▪创建特殊文件:

mkdir,mkfifo

▪文件操作:

cp,mv,rm

▪修改文件属性:

chmod,chown,chgrp

▪查找文件:

find

▪字符串匹配:

grep

▪其它:

echo,pwd,cd,file,more,cat,gzip,tar

▪进程操作:

ps,kill

▪用户和组账号操作:

useradd,userdel,groupdel,passwd

▪网络命令:

ifconfig

▪其他:

who,whoami,su,sudo,uname,man,mount,unmount,du,df

掌握文件和目录权限的表示方法

第3章Shell程序设计

Shell:

用户和操作系统之间的接口

Linux的Shell主要有sh(Bourne),cshbash,ksh

Shell的工作步骤:

打印提示符;得到命令行;解析命令;查找文件;准备参数;执行命令

重定向:

•系统定义三个标准文件:

标准输入(stdin)、标准输出(stdout)、标准错误输出(stderr),对应的文件描述符为0,1,2。

•用“>”改变输出,用“2>”改变错误输出,用“>>”来追加到已有的文件中

kill–l1234>killout.txt2>&1(把标准输出和错误输出都放入同一个文件killout)

可以用管道操作符|来连接进程,前一个命令的输出是后一个命令的输入。

如:

who|wc–l

掌握管道和重定向的用法。

执行shell文件的两种方法:

方法1:

$shscript_file

方法2:

$chmod+xscript_file(chown,chgrpoptionally)

$./script_file

用户环境:

~/.bash_profile,~/.bash_logout,~/.bashrc

 

环境变量:

$HOME

当前用户的登陆目录

$PATH

以冒号分隔的用来搜索命令的目录清单

$#

传递到脚本程序的参数个数

$0

脚本程序的名字

$1,$2,…

脚本程序的参数

$*

一个全体参数组成的清单

几个shell内置命令:

•exitn:

以退出码”n”退出脚本运行

•export:

将变量导出到shell,使之成为shell的环境变量

掌握基本的shell程序设计。

 

第4章程序开发和调试

掌握gcc用法,掌握o、c、g、I、L、l、x选项用法。

gcctest.c

gcctest.c-otest

gcc-Stest.c-otest.s

gcc-ctest.c-otest.o

gcc-O1test.c-otest

gcc-gtest.c-otest

库是一组预先编译好的函数的集合。

标准的库文件一般存储在/lib和/usr/lib目录中。

库文件的名称总是以lib开头,其中.a代表静态函数库,.so代表共享函数库。

静态库的创建:

gcc-c+arcrv

如arcrvlibfoo.abill.ofred.o

make&makefile

▪makefile描述模块间的依赖关系;

▪make命令根据makefile对程序进行管理和维护;make判断被维护文件的时序关系

掌握make命令的用法

掌握makefile文件编写(包括宏和内置宏、后缀、模式规则的使用)

Makefile的内置宏定义:

$@规则中的目标名字

$<依赖文件中的第一个

$^所有的依赖文件

$?

依赖文件中所有比目标新的文件

以下两个特殊字符,出现在命令之前:

-:

忽略所有错误

@:

执行某些命令前不将该命令本身输出到屏幕

调试工具gdb

掌握几个常用的命令:

file,break,run,list,next,step,display,print,quit

Unix在源码管理方面有三个被广泛使用的系统

RCS:

版本控制系统

CVS:

协同版本控制系统

SCCS:

源代码控制系统

file打开要调试的文件

break设置断点

run

list列出源代码的一部分

next执行一条语句,但不进入函数内部

step执行一条语句,是函数则进入函数内部

display显示表达式的值

print临时显示表达式的值

kill终止正在调试的程序

quit退出gdb

 

 

 

 

 

第5章文件系统

Linux文件类型:

普通文件,目录文件,设备文件,管道文件,链接文件。

Linux能支持多种目前的文件系统,如EXT2、EXT3、FAT、VFAT、ISO9660、NFS、SMB等。

LINUX的标准文件系统为EXT系列。

EXT2文件系统inode结构:

每个文件都有唯一一个索引节点

EXT2文件系统块组是由:

超级块、组描述符表、块位图、inode位图、inode表、data数据块构成。

超级块:

描述EXT2文件系统整体信息的数据结构。

位于每个块组的最前面,所有块组中的基本超级块的内容是相同的。

VFS:

VFS屏蔽了各种文件系统的差别,为处理各种文件系统提供了统一的接口。

文件管理和操作:

对系统中打开的文件,主要从两个方面进行管理:

1、系统通过打开文件表进行统一管理,即把所有进程打开的活动文件集中进行管理,系统打开文件表是一个双向链表,它的每个节点是一个file结构,称为文件结构体。

2、进程用两个私有结构对打开的文件进行管理:

fs_struct、files_struct,其中fs_struct结构描述进程与文件系统的关系,files_struct包含进程的打开文件表,由于进程打开文件表fd[]数组的每个元素对应进程的一个活动文件,所以在linux中把fd[]数组的下标作为一个进程的活动文件标志,称为文件描述符。

系统调用与库函数的区别:

所有的操作系统都提供多种服务的入口点,这些入口点被称为系统调用(Systemcall),是内核的对外接口,用户程序和内核之间唯一的接口。

库函数依赖于系统调用,提供较复杂功能。

 

掌握几个系统调用

名称

含义

open

close

read

write

lseek

unlink

remove

打开一个文件来读、写或创建一个空文件

关闭以前打开的文件

从文件中读取数据

将数据写到文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 职业教育 > 职高对口

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1