linux shell程序设计实验报告,linux的shell脚本实验报告

《linux的shell脚本实验报告》由会员分享,可在线阅读,更多相关《linux的shell脚本实验报告(7页珍藏版)》请在人人文库网上搜索。

1、第二次实验内容一、实验名称:Linux下shell编程二、实验类型:设计三、实验目的:1 熟悉Linux的shell几种变量使用2 熟练掌握Linux的shell编程几种结构3 熟练掌握Linux下shell脚本的编写四、实验准备参考教材,课件第7章内容及笔记。要求实验内容全部写到实验报告上(B5纸)。五、实验内容1. 练习使用shell四种变量,参考课件例题。用户自定义变量,环境变量,位置变量,特殊变量这四种变量类型的使用,书中有例题。2. 调试课件所有shell脚本的例题。3. 编写如下脚本:l 编写脚本if1,测试其功能。 echo -n word 1: read word1echo -。

2、n word 2: read word2if test $word1 = $word2thenecho Matchfiecho End of program.l 编写脚本chkargs,测试其功能if test $# -eq 0thenecho You must supply at least one argument.exit 1fiecho Program running.l 编写脚本if2,测试其功能if test $# -eq 0thenecho You must supply at least one argument.exit 1fiif test -f $1thenecho $1。

3、 is a regular file in the working directoryelseecho $1 is NOT a regular file in the working directoryfil 编写脚本if3,测试其功能echo -n word 1: read word1echo -n word 2: read word2echo -n word 3: read word3if $word1 = $word2 -a $word2 = $word3 thenecho Match: words 1, 2, & 3elif $word1 = $word2 thenecho Match。

4、: words 1 & 2elif $word1 = $word3 thenecho Match: words 1 & 3elif $word2 = $word3 thenecho Match: words 2 & 3elseecho No matchfil 编写smartzip 脚本,测试其功能#!/bin/bashftype=file $1case $ftype in$1: Zip archive*)unzip $1 ;$1: gzip compressed*)gunzip $1 ;$1: bzip2 compressed*)bunzip2 $1 ;*) echo File $1 can 。

5、not be uncompressed with smartzip;esacl 编写脚本dirfiles,测试其功能。for i in *doif -d $i thenecho $ifidonel 编写脚本until1,测试其功能。用while改写之。secretname=jennyname=nonameecho Try to guess the secret name!echountil $name = $secretname /while改写位 while “$name” != “$secretname” ,其他地方不变doecho -n Your guess: read namedone。

6、echo Very good.l 编写脚本brk,测试其功能。for index in 1 2 3 4 5 6 7 8 9 10doif $index -le 3 ; thenecho continuecontinuefi#echo $index#if $index -ge 8 ; thenecho breakbreakfidonel 编写脚本command_menu,测试其功能。echo -e n COMMAND MENUnecho a. Current date and timeecho b. Users currently logged inecho c. Name of the wor。

7、king directoryecho -e d. Contents of the working directorynecho -n Enter a, b, c, or d: read answerechocase $answer ina)date;b)who;c)pwd;d)ls;*)echo There is no selection: $answer;esacl 编写脚本demo_shift,测试其功能。echo arg1= $1 arg2= $2 arg3= $3shiftecho arg1= $1 arg2= $2 arg3= $3shiftecho arg1= $1 arg2= $。

8、2 arg3= $3shiftecho arg1= $1 arg2= $2 arg3= $3shiftl 编写shell脚本sum1,求命令行上整数和。即:$./sum1 5 12 4 6,给出和的结果。sum=0for i in $*do let sum=sum+idoneecho “和是:$sum”l 编写脚本filetest,判断当前目录下所有文件类型,如果是普通文件,显示文件内容;如果是目录文件,显示目录列表;如果是大小为0的文件,删除它;否则,显示“sorry, The file is not recognized!”for i in *do if -d $i then ls $ie。

9、lif -f $i then if -s $i then cat $ielse rm $ifielseecho n “sorry,the file cant be recognized”fidonel 编写shell脚本user,判断当前登录用户是否为“学号命名”的用户,是,提示:hello “学号用户”,welcome!,否,提示“you should login using your username! ”Read nameIf $USER = $name Then echo “hello $USER”else echo “you should login using your usern。

10、ame!”fil 编写shell脚本menu,使用shell编写一个菜单,分别实现列出以下内容:(1)显示目录内容、(2)切换目录、(3)创建文件、(4)编辑文件、(5)删除文件的l 功能。在此例中将用到循环语句、分支语句和输入输出语句。Echo “a.display the directory”Echo “b.change the directory”Echo “c.create a file”Echo “d.delete the file”Echo “if you input nothing,you will exit”Read itemUntil -z $item Do Case $it。

11、em in a) Echo “input the directory”Read direLs $dire;b) Echo “input the directory you want go into”Read direCd $dire;c) Echo “input the file you want to create”Read fTouch $f;d) Echo “input the file you want to delete”Read fRm $f;EsacEcho “a.display the directory”Echo “b.change the directory”Echo “c。

12、.create a file”Echo “d.delete the file”Echo “if you input nothing,you will exit”Read itemdonel 编写脚本,实现一个简单计算器。+ addition- subtractionx multiplication/ division脚本执行形式:$ ./cal.sh 21 / 3Let l=$1 /最简单的一种形式,而且还特别高效Echo $1;第二种方式:Re=”+ - * /”For var in $reDoIf $var = “*” ThenNum2=$1#*Num1=$1%*ElseNum2=$1#*$varNum1=$1#%$var*FiIf $num1 =$1 Then continueFiCase $var in“+”) let num=num1+num2Break;“-“) let num=num1-num2;Break;“*”)let num=num1*num2Break;“/”)let num=num1/num2Break;EsacDoneEcho $num六、实验总结。

你可能感兴趣的:(linux,shell程序设计实验报告)