Linux 考试试题
二、填空题:
1. /Sbin 目录用来存放系统管理员使用的管理程序
2.在Linux系统下,第二个IDE通道的硬盘(从盘)被标识为 hdb
3.vi编辑器具有三种工作模式,即:命令模式、文本编辑模式和 行编辑模式
4.linux文件系统中每个文件用 i节点 来标识
5.前台启动的进程使用复合键 CTRL+C 终止。
6. 结束后台进程的命令是 kill
7.将前一个命令的标准输出作为后一个命令的标准输入,称之为 管道
8.增加一个用户的命令是 useradd
9.成批添加用户的命令是 newuser
10. 检查已安装的文件系统/dev/had5是否正常,若检查有错,则自动修复,其命令及参数是
Fsck –a /dev/had5
11.把文件file1和file2合并成file3的命令是 cat file1 file2>file3
12.在/home目录中查找所有的用户目录的命令是 find /home –type d
13. top 命令能够实时地显示进程状态信息。
14. 利用管道技术统计当前目录下有多少个文件,该命令是 ls ./|wc –w
15.以下为 u盘插入usb接口后执行fdisk –l的结果。则要将该u盘挂装到/mnt/usb下的命令是 mount /dec/sdb1 /mnt/usb
16. 在 Linux 系统中,压缩文件后生成后缀为.gz文件的命令是 gzip
17. RPM有5种基本操作模式,即: 安装、查询、校验、升级、删除
18.将当前目录下的文件man.config 压缩为man.config.bz2 的命令是 bzip2 –z man.config
19.将/home/stu目录下所有的.gz压缩文件解压缩,包括子目录,命令是 gunzip –r /home/stu
20.将当前目录下的bin目录和hello、hello.c文件备份并压缩为binzxj.tar.gz文件的命令是 tar –czvf binzxj.tar.gz bin hello hello.c
21. 将/home/ixdba目录做归档压缩,压缩后生成ixdba.tar.bz2文件,并将此文件保存到/home目录下,实现此任务的tar命令格式 tar -cjvf /home/ ixdba.tar.bz2 /home/ixdba
22.如下为命令终端下的一个截图:
则,以下两句的执行结果是: the home path is $HOME
path=‘the home path is $HOME’
echo $path
23. 以下为程序名为prog的程序内容。则 sh prog a b c d的执行结果为 C
set A B C D
shift
shift
echo $1
24. RPM有5种基本操作模式,即: 。
25. shell脚本程序test(具有可执行权限)只有如下两条语句,则sh test 5的运行结果是50.00
price=$10.00
echo $price
三、简答题:
1. 简述linux的几个运行级别及其相应的含义。
0-关机模式,
1-单用户模式,单用户只有系统管理员可以登录。
2-多用户模式,但是不支持文件共享,例如不支持NFS服务.这种模式不常用。
3-完全的多用户模式,支持NFS服务.最常用的用户模式,默认登录到系统的字符界面。
4-保留模式。
5-完全多用户模式,默认登录到X-window系统,也就是登录到linux图形界面。
6-重启模式,也就是执行关闭所有运行的进程,然后重新启动系统。
2.什么是链接?符号链接与硬链接的区别是什么?
链接是指用一个i节点对应多个文件名。硬链接是把文件的i节点号指向该i节点,
且链接计数器值加1。删除链接文件时计数器值减1,当其值为0时,i节点被释放。
符号链接是只有文件名的一个链接文件,并不指向一个真正的i节点。
在删除符号链接文件时与硬链接文件有区别。
3.使用进程调度启动,指定30分钟后(或在2008年12月28日晚上20点30分)将/home/stu目录里的文件备份并压缩为stu.tar.gz,并放到/home/temp目录里(当前/home/temp目录并不存在)。
(1) 编辑一个文件,如:atfile,内容如下:
mkdir /home/temp
tar –czvf /home/temp/stu.tar.gz /home/stu/*
(2) 执行at命令
at –f atfile now +30 minutes
解答2:
(1) 执行at命令
at now +30 minutes
(2) 回车出现at>提示符后,继续输入要做的命令
at> mkdir /home/temp
at> tar –czvf /home/temp/stu.tar.gz /home/stu/*
at>
4.Shell程序中,对用户变量赋值有哪些方式?简要说明每种赋值方式的使用方法。
(1) 等号赋值
1)在等号前后均不能有空格。
2)当需要将一个包含空格的字符串赋给用户变量时,应用单引号将该字符串括起来。
(2) 键盘赋值
由read命令来实现的。用法为:read 用户变量名
当shell程序执行到该行时,将等待用户从键盘输入,
当用户按下回车键时shell把你输入的内容赋给用户变量。
(3) 命令替换赋值
用法为:用户变量=`命令`
该语句将首先执行反向单引号之间的命令,
然后将其执行后输出的内容赋给该用户变量,在这种赋值方式中,
等号前后同样不能有空格,而且必须用反向单引号(即重音号)把命令括起来。
四、综合应用:
1.编写1个弹出式菜单的shell程序并实现其简单的菜单功能:
*******************************************************
* MENU *
* 1.copy 2.rename *
* 3.remove 4.find *
* 5.exit *
*******************************************************
即用户按下数字1,则提示用户输入源和目的文件名后执行复制;输入数字2,则提示用户输入要更名的文件或目录后执行更名操作;输入数字3,则提示用户输入要删除的文件并执行删除操作;输入数字4,则提示用户输入要查找的文件并执行查找操作;输入数字5,则退出该菜单shell程序的执行。
#! /bin/sh -
clear
while [ 0 ]; do
echo "************************************************"
echo " menu "
echo " 1.copy 2.rename "
echo " 3.remove 4.find "
echo " 5.exit "
echo "************************************************"
echo
echo -n " select:"
read choice
echo
case $choice in
1)
echo -n "source file:"
read src
echo
echo -n "destination fold:"
read des
cp -arf $src $des
if $?; then
echo "copy sucessful!"
else
echo " copy fail"
fi;;
2)
echo -n "the file to be renamed:"
read src
echo
echo -n "the new file:"
read des
mv $src $des
if $?; then
echo "rename sucessful!"
else
echo " rename fail"
fi;;
3)
echo -n "the file to be removed:"
read src
rm -rf $src
if $?; then
echo "remove sucessful!"
else
echo " remove fail"
fi;;
4)
echo -n "the file to be found:"
read src
find $HOME -name $src;;
5) exit;;
*) echo "Invalid option";;
esac
done
2. 编写shell程序,实现自动删除50个用户账号的功能。账号名为stud1至stud50
#!/bin/sh
i=1
while [ $i -le 50 ]
do
userdel -r stud${i}
i=$(($i+1 ))
done
echo "remove sucessful!"
else
echo " remove fail"
fi;;
3.用shell编写小九九乘法表程序,程序执行结果如下:
#! /bin/sh –
for i in 1 2 3 4 5 6 7 8 9
do
for j in 1 2 3 4 5 6 7 8 9
do
if ( test $j -le $i ) then
echo -ne `expr $i \* $j` "\t"
else
echo
break
fi
done
done