(      ) 1。 下列关于Linux安装的说法中,不正确的是           
A如果计算机的内存为128MB,则SWAP分区(交换分区)的大小通常设定为256M。
B。安装时Linux分区的文件系统类型一般为ext2或ext3.
C.安装时要进行磁盘分区,如果选择“自动分区”,系统会自动保留硬盘上原来的数据。
D。Linux除了可以从光盘安装外,还可以从网上下载Linux的iso映像文件,从硬盘安装.
(      ) 2。 下列说法中,不正确的是        .
AShell程序编写完后还需要用gcc编译器编译.
B.可以通过将shell程序作为sh命令的输入来执行shell程序。
C. shell程序中定义的函数不能有参数。
D. Linuxlinux的vi编辑器命令是免费使用和自由传播的类UNIX操作系统,但它并不是没有版权。
) 3。 为了利用GDB调试C/C++程序,在编译时需要把调试信息加载到可执行文件中,则用GCC编译源程序时,需要利用选项       
A。 –O2            B. -E                C。 –Wall            D. -g   
    ) 4 $temp='world'echo hello’$temp'
上述命令执行的结果为       
A. helloworld        B. hello$temp         C。 helloworld'         D. hello
(      ) 5. 下列关于网络编程的叙述中,错误的是        .
A.一个完整的网络程序应该包含两个独立的程序,它们分别运行在客户端和服务器端。
B.相同条件下UDP发送数据的速度要比TCP快.
C. 当使用UDP编程时,如果函数sendto( 成功返回,表示系统发出的数据被通讯的对方准确接收到了。
D.端口号是16bit的地址码,端口号和IP地址构成一个插口(socket).
  ) 6 某shell程序在运行时需要向脚本传递参数,则为了得到所有命令行参数的个数,我们可以使用变量       
A. $@        B. $#            C。 $0            D. $!
    ) 7. 将当前目录下的文件shell.sh移动到目录/home/linux下的命令为             
A。 cp  shell。sh /home/linux                 B。 mv  shell.sh /home/linux
C。 lls  shell。sh / home/linux/shell。sh        D. mv /root/shell。sh  /home/linux/shell.sh
(    ) 8 在linux下进行shell编程时,注释符是       
A. #                B. //                C。 /*  */            D. 以上都不对
  ) 9. 任何时候用户需要回到用户主目录时可以使用命令     
Acd            Bpwd        C. path        Dcd 。
    ) 10. 文件exer1的访问权限为744,现要取消文件所有者的执行权限,同时增加同组用户的写权限,下列命令中正确的是       
A. chmod u+x, g+w exer1                        B. chmod 646 exer1
C. chmod a—xg+w exer1                        Dchmod g+w exer1
11.           就是将前一个命令的标准输出作为后一个命令的标准输入.
12. Linux有两种工作界面:字符界面和图形界面,其中            界面功能更强大。
13。 常用的socket类型有两种:                                            .
14。 将文件file1和文件file2连接成文件file3的命令是                          .
15。 传递给shell脚本的位置参数只有前9个可以被访问,为了访问第9个位置参数以后的参数可以使用命令           
16。 shell不仅是用户命令的解释器,同时也是一种功能强大的                    是Linux缺省的shell。
17. 在shell编程时,如果将测试条件置于方括号内,应注意方括号两边必须有           
18. 有时用户需要在一行给出多个shell命令,假定输入的命令都需要运行,则在shell提示符下输入命令时,可在命令之间加上符号              .
19。 为了获得父进程的ID号,可是使用函数                         
20. 在用bash命令调试shell程序时,为了将shell执行的每一个命令行都显示出来,应该使用bash的选项            
21. 在Linux下调试c程序时,在提示符(gdb)下输入b  10表示                         
22。 你是公司的Linux服务的管理员。你想查看/root下文件和文件夹的赋权的详细列表,可以使用命令             
23. 在用vi编辑好文件后,为了将文件内容存入test.。txt文件中并退出vi(开始进入vi时并未输入文件名),应在末行模式下键入         
22。 试分别说明Linux下shell程序和C程序从编写到运行的一般步骤。(本题满分5分)
23. vi编辑器有哪几种工作模式?各工作模式之间如何进行转化?(本题满分5分)
24。 阅读程序,写出程序的执行结果,并分析程序的执行过程。(本题满分10分)
#include <sys/types。h>
#include 〈unistd。h〉
int main()
{
  pid_t result;
int var=10;
  printf("before fork,var=%d\n",var);
  result=fork(); 
  if(result<0)
    printf(”fork fail\n");
  else if(result〉0)
  {
    var++;
    printf(”This is parent!\n”);
  }
  else
  {
    var— —;
    printf(”This is child!\n”);
  }
printf(”after fork var=%d\n”,var);
return 0;
假定父子进程均可在一个时间片内执行完,且操作系统每次均先调度子进程。
25。 某Shell程序以一个普通文件作为参数,其功能是:判断文件的大小是否为0,如果是则删除它;否则将该文件的内容输出到标准输出,请将程序补充完整。(本题满分10分)
#!/bin/sh
FILENAME=
echo -n ”Input file name:"
                              #输入文件名
                                    #如果不是文件
then
                            #shell程序直接退出
fi
                                  #判断该文件是否为空
then
                        #为空则删除它
else
  cat $FILENAME #否则输出文件的内容到标准输出
fi
26。 假如你是机房系统管理员,某班上的80个学生在机房的Linux服务器上共创建了80个帐号,帐号名为“user20060001"~“user20060080”,现在课程结束了,这些帐号均不再使用。
试编写一个shell程序,删除学生所建的上述帐号.本题满分12分
27。 试编写一个简单的C程序,分别列出在终端tty1~tty6共6个终端上运行的所有进程。(本题满分8分)
28. 设计一个程序,当用户从客户端输入“Hello,Server",传送到服务器端,变成“Hello,Client",送回客户端;如果从客户端输入“Hello,ABC”,传送到服务器端,则变成“Hello,abc”,送回客户端;如果从客户端输入“exit传送到服务器端,服务器端程序退出,不向客户端送回任何信息;上述三种情况之外的其它情况,从客户端输入的内容经服务器后均原样送回客户端.(本题满分15分)
一、选择题(共10题,每题2分,共20分)
1.C                2.A                3.D                4.B                5。C   
6.B                7.B                8.A                9.A                10.C
二、填空题(共13题,每空1分,共15分)
11.管道(或者“|")
12.字符界面
13.流式socket(流式套接字,SOCK_STREAM),数据报式socket(数据报式套接字,SOCK_DGRAM)   
14.cat file1 file2 > file3    15shift            16.编程语言        bash            17.空格
18        19getppid()        20。 —v        21.在第10行设置断点        22. ls –l  /root(写成ls –l也算对)23.(或者
三、简答题(共2题,共10分)
22。 试分别说明Linux下shell程序和C程序从编写到运行的一般步骤。(本题满分5分)
(1)在linux的命令提示符下启动编辑器,如输入vi,启动vi编辑器。
(2)输入程序的内容,然后保存,退出。
(3)如果编写的是shell程序,在运行前需要增加执行权限,可通过如下语句:
chmod +x filename
如果编写的是c程序,则进行编译,GCC  源文件 o  目标文件.
(4)如果发现程序有语法错误或者逻辑错误,则需要继续调试程序,直至程序无任何语法错误或逻辑错误。
(5)运行程序  。/可执行文件名、
23. vi编辑器有哪几种工作模式?各工作模式之间如何进行转化?(本题满分5分)
vi有三种工作模式:命令行模式,文本输入模式,末行模式。各模式之间的切换如下图所示:
四、读程序题(共2题,共20分)
24 before fork,var=10
This is child
after fork var=9
before fork,var=10   
This is parent!
after fork var=11
程序的执行过程如下:
        程序先定义了两个变量result和var,然后输出变量var的值,

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。