姓名___________联系方式__________中科院测试班linux-基础试卷一、选择题1.一个bashshell脚本的第一行是什么()A#!/bin/bashB.#/bin/bashC.#/bin/cshD./bin/bash2.下面哪个命令是用来定义shell的环境变量()A、exportfsB.aliasC.exportsD.export3.哪个命令可以将普通用户转换成超级用户()A.superB.passwdC.tarD.su4.在vi编辑器里,命令dd用来删除当前的()A.行B.变量C.字D.字符5.在一行内运行多个命令需要用什么字符隔开()A.@B.$C.;D.*6.按下()键能终止当前运行的命令A.Ctrl-CB.Ctrl-FC.Ctrl-BD.Ctrl-D7.显示用户的主目录的命令是什么?()A.echo$HOMEB.echo$USERDIRC.echo$ENVD.echo$ECHO12.在vi编辑器里,哪个命令能将光标移到第200行()A.g200B.G200C.:200D.200g8.以下哪个命令可以终止一个用户的所有进程()A.skillallB.skillC.killD.killall9vi中哪条命令是不保存强制退出()A.:wqB.:wq!C.:q!D.:quit10.vi中复制整行的命令是()A.y1B.yyC.ssD.dd11.以下对于shell用户变量的定义,不对的是()A.g_Linux=2.6.30B.LINUX=2.6.30C.0_Linux=2.6.30D.linux=2.6.3012.在终端里执行echo“currentpath:“‘`pwd`’“”结果是:()A.currentpath:/home/LinuxB.currentpath:’/home/Linux’C.currentpath:’`pwd`’D.currentpath:`pwd`二、填空题1.对于目录间的切换,跳转到上一级目录使用(),切换到当前用户的家目录()2.需要删除目录xx_linux下的所有文件及目录,并无需提示逐一删除,执行命令为()3.终端里执行a=100;b=20;echo&[$a+$b];echo$a+$b;结果分别是()()4.导出历史记录的最近20条记录到cmd.txt文本:()5、vim进入text.c文件里。在插入模式下,想查找单词word,怎么进行操作()。6、vim进入text.c命令模式下,复制10行,(),然后粘贴(),删除第十行(),删错了,想恢复()。三、简答题:1、建立一个公共目录/opt/public,设定此目录权限为对所有者和所在组具有可读可写可执行权限,对其他人只能读取。2.(5分)请说明上图各项分别表示什么内容3(5分)设计一个shell程序,自动化创建一个基本型文件系统,file_system.sh在当前路径下新建my_fs目录,此目录里有bin,sbin,dev,etc,lib,mnt,opt,usr,proc,home。这些目录,并从当前操作系统里复制对应bin,etc,sbin目录里的文件以及lib/下带.so的文件复制到此新文件系统的对应bin,sbin,etc,lib下。4、现在有一个text.c的文件,请写出此文件预处理,编译、汇编,连接的过程。5、现有fun1.c、fun2.c、fun3.c、main.c请编译出静态链接库和动态链接库,并动态链接和静态链接过程。6、删除当前目录下以m开头的文件。然后将当前目录下的a.txt重命名为a.c。7、将当前目录下所有的.c文件复制到当前目录中的source目录下8、请用两种方式输出hello.c的文件内容9、请说出静态连接和动态连接的区别。10.shell特殊变量中$?,$#分别表示什么意思?四、编程题1、从终端读入一个数,用if语句判断一个数是否为偶数,如果是偶数,屏幕输出是偶数,如果不是偶数,屏幕输出你是偶数。2、猜数字游戏。1.随机数发生器产生随机数,规定随机数范围0-100猜数($RANDOM)2.提示用户进行0-100猜数,如果猜不到,缩小范围,直到猜到为止,记录猜的次数。如果指定5次,表示猜成功,大于5次,自动告知实际数字,提示失败。3、密码比对,用户有3次机会输入用户名和密码,如果输入正确,退出程序,如果输入错误,继续输入用户名和密码,直到三次机会用完,程序结束。(while语句)4、通过shell脚本实现简易的计算器功能。具有+-*/功能,要求输入例如./calc10+20结果输出305、用shell编程的for语句打印三角星。图案如下:***************