1、( D )(5分) $VAR3 = $VAR1 + $VAR2 $VAR3 = $VAR1 + $VAR2 $VAR3 = ( VAR1 + VAR2 )( VAR3 = VAR1 + VAR2 ) 2. 以下程序的输出是?(D )(5分) #!/usr/bin/shA=1while $A -lt 10 doB=1while $B -lt 10 break 2echo Inner loopdoneOuter loop A. “Inner loop” 将被打印10次 B. “Outer loop” 将被打印10次.C. “Outer loop” 将被打印10次.D. 什么都没有被打印.3. 请在
2、vi中逐一编辑,修正(如果有误)并执行以下10个shell脚本程序,然后结合所学知识和程序的输出理解各程序中各语句的含义,对各小题附上结果截图。(每小题5分)3.1. 编写一个简单的回显用户名的shell程序。/bin/bash#filename:dateMr.$USER,Today is:echo dateecho Whish you a lucky day!3.2.使用if-then语句创建简单的shell程序。bbbbecho -n Do you want to continue: Y or Nread ANSWERif $ANSWER=N -o $ANSWER=n thenexitfi
3、3.3.使用if-then-else语句创建一个根据输入的分数判断是否及格的shell程序。 #!akplease input a score:read SCOREYou input Score is $SCOREif $SCORE -ge 60 ;Congratulation!You Pass the examination.elseSorry!You Fail the examination!press any key to continue!read $GOOUT 3.4.使用case语句创建一个菜单选择的shell程序。za#Display a menuecho _1 Restore2
4、 Backup3 Unloadecho#Read and excute the users selectionEnter Choice:read CHOICEcase $CHOICE in1) echo Restore;2) echo Backup3) echo Unload*) echo Sorry $CHOICE is not a valid choiceexit 1esac3.5.使用for语句创建简单的shell程序。mmfor ab in 1 2 3 4echo $ab篇二:Linux实验报告6参考答案Linux程序设计实验报告6参考答案课程名称: Linux 实验名称:Linux系
5、统应用开发二、1.下面给出了一个SHELL程序,试对其行后有#(n)形式的语句进行解释,并说明程序完成的功能。/bin/bash #(1)dir=$1 #(2)if -d $dir #(3)cd $dir #(4)for file in *if -f $file #(5)cat $file#(6)echo “end of file $file”echo “bad directory name $dir” #(1)使用/bin/bash解释脚本 #(2)将位置变量1赋值给变量dir#(3)如果dir所指为目录#(4)将当前目录改为dir#(5)如果循环变量file所指是普通文件#(6)显示文件f
6、ile的内容程序功能:若命令行参数是一个合法目录则显示该目录下所有普通文件的内容,否则显示错误的目录名信息。 2、某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决方案:(1) 在下午4 :50删除/abc目录下的全部子目录和全部文件。(2) 在每周日凌晨零点零分定期备份/user/backup到/tmp目录下。使用crontab e 命令创建crontab文件。(1)在下午4 :50 16 * * * rm -r /abc/*(2)在每周日凌晨零点零分定期备份/user/backup到/tmp目录下。0 0 * * sun cp r /user/backup /tmp 3、编写
7、一个名为mul的脚本程序,参数为一个大于20的正整数。先检查参数是否符合要求。如果不符合要求,请给出提示”number is wrong”;如果符合要求,分别输出其与1到10的乘积。if $1 -gt 20 n=1m=1while $n -le 10 m=$(expr $1 * $n)$n $mn=$(expr $n + 1)echo &(转载自: 小草 范 文 网:linux程序设计实验报告6)quot;number is wrong 4、编写一个shell脚本,能够显示下面序列的前25个数字。0,1,1,2,3,5,8,13,前二个数字之和为第三个数字,即著名的Fibonacci序列。n=
8、0$n $m t=1a=2while $a -lt 25 t=$(expr $n + $m)$t a=$(expr $a + 1)n=$mm=$t 5、用shell编写小九九乘法表程序,程序执行结果如下: /bin/sh for i in 1 2 3 4 5 6 7 8 9for j in 1 2 3 4 5 6 7 8 9if ( test $j -le $i ) thenecho -ne expr $i * $j tbreak 三、 1、写一个shell 脚本,检查给出的串是否为回文(palindrome)。 /bin/bashEnter stringread strlen=echo $s
9、tr | wc -clen=expr $len - 1l=expr $len / 2ctr=1flag=0while test $ctr -le $la=echo $str | cut -c$ctrb=echo $str | cut -c$lenif test $a -ne $bthen flag=1ctr=expr $ctr + 1if test $flag -eq 0then echo String is palindromeelse echo String not a palindrome2、下面给出了一个SHELL程序,试对其行后有#(n)形式的语句进行解释,并说明程序完成的功能。(8
10、分)#(1)获取/root中名称包含bak的文件或目录#(2)判断1结果为空#(3)创建目录/root/bak并进入该目录#(4)获取当前时间的年月日#(5)按照年(2位)月(2位)日(2位)_etc方式构造压缩文件名#(6)压缩etc目录并保存在/root/bak中若/root/bak不存在则创建之,然后将/etc按日期打包保存于该目录中。3、编写一个名为move的脚本程序,格式move 。 如果ylinuxs不存在,给出提示;否则移动ylinuxs至file2。if test -f ylinuxsthen mv ylinuxs file2ylinuxs is not exists篇三:-Linux程序设计实验报告 实验报告 Linux程序设计学院:信息科学与工程学院 专业:13计算机班级:姓名:学号:XX年6月28日山东科技大学教务处制1实验报告2345
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1