Linux实验报告shell脚本编程_第1页
Linux实验报告shell脚本编程_第2页
Linux实验报告shell脚本编程_第3页
Linux实验报告shell脚本编程_第4页
Linux实验报告shell脚本编程_第5页
已阅读5页,还剩1页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南京信息工程大学实验(实习)报告实验(实习)名称一shell脚本编程实验(实习)日期得分指导教师系_专业计算机科学与技术年级班次姓名学号一【实验目的】1、了解和熟悉创建并使用脚本的步骤。2、熟悉bash的控制结构。3、学会简单的shell编程。二【实验内容】1、创建一个简单的列目录和日期的shell脚本并运行之。步骤:输入下列命令,创建一个新文件:catnew_script输入下列行:echo“Yourfilesare”lsecho“todayis”date按回车键将光标移到一个新行,按Ctrl+D键保存并退出。检查文件内容,确保它是正确的:#catnew_scriptrroot1ocalli

2、otroct#catiptechoYcuiFilesareIsechotedayi?daatcrootocallntroct#catiptechoYduyfilesareIsechotedayi?daatc运行脚本,输入它的文件名:#new_scriptfroctocalhostrcol1tfne_scriptbash:nescript:coimBndlnotfound该脚本不运行。输入下列命令,显示文件的权限:#ls-lnew_scriptrootocalhostroct1SIs-Inci_script-r*rr-1roolroot451Q1112:1nftript权限表明该文件不是可执行。

3、要通过简单调用文件名来运行脚本,必须有权限。输入下列命令,使new_script变成可执行文件。chmod+xnew_script要查看新的权限,输入:Is-lroot勾ocalhostrocl1#chrrodl+xDot冋ocalhostrocit1flIs-1息願3G-t址r一-trootrootdrw3rootroot-t址r一-trootrooti址-Ii11ool1ool-rwr-xr-xrootroot现在拥有文件的读、写和执行权限。输入新脚本的名字以执行它:jieK_scrlpt12592009-10-11aiiacoiida-ks.cfg409610)1111h53Etikto

4、p171252009-10-11instal1.log32362009-10-11instal1.1ogL1og4510J1112118n?w_scriptnew_script所有输入到文件的命令都执行,并输出到屏幕上。如果接收到错误信息,比如:commandnotfound输入下列命令:#./new_scriptIrootocallH)trcolJff.iJiescrlpt./nescript:Iine1:echoYbuifilesare:conTiandnotfoundajiaDJida-ksLefgEtiktopinstall.loginstaII.IogLsyItigJiescript

5、./nescript:Iine3:echolcdayis:connmiidnotfound./ipt:Iine4idaate:comnniidnotfound日10月1112:37:00CST2009该命令行通知shell到哪里寻找shell脚本new_script,即您的当前目录“.”。2、用Shell语言编制一Shell程序,该程序在用户输入年、月之后,自动打印数出该年该月的日历。参考程序echo“Pleaseinputthemonth:”readmonthecho“Pleaseinputtheyear:”readyearcal$month$yearrootoralhostIDDl1fle

6、choPleaseinputttieirojith:卩Ieaseiiiputttierrojith:rootoralhostIDDl1flreadiiunth12rootoralhostIDDl1flechoPleaseiiiputttieyear:卩I吐inputtheyear;rootoralhostIDDl1flreadyear2010rootocalhostrout1#caI$month$year|-t2010口-一一叫五六TOC o 1-5 h z12345fi7g91011121314151617IS192021222324252627282930313、编程提示用户输入两个单词,

7、并将其读入,然后比较这两个单词,如果两个单词相同则显示“Match”,并显示“Endofprogram”,如果不同则显示“Endofprogram”。if1echo-n“word1:”readword1echo-n“word2:”readword2iftest“$word1”=“$word2”thenecho“Match”fiecho“Endofprogram.”程序说明ifthen控制结构的语法是:iftest_commandthencommandsfi其中test_command为test“$wordT=“$word2”,test是一个内置命令,如果它的第一个参数和第三个参数存在第二个参数

8、所指定的关系,那么test将返回ture。Shell将执行then和fi之间的命令。否则执行fi后面语句。4、修改上述程序,编程提示用户输入两个单词,并将其读入,然后比较这两个单词,如果两个单词相同显示“Match”,不同则显示“Notmatch”,最后显示“Endofprogram”。编程提示请使用ifthenelse控制结构。rrootoca!11051root#catif3EctiD-wvcrdl:readvordlEctiD-nd2:*readwrd2iftest$vcrd1=*LtiejiEchoMtth*elschbtMlchechoEndofprogram*5、编程使用case结

9、构创建一个简单的菜单,屏幕显示菜单:CurrentdateandtimeUsercurrentlyloggedinNameoftheworkingdirectoryContentsoftheworkingdirectoryEntera,b,cord:根据用户输入选项做相应操作。参考程序echo-e“nCOMMANDMENUn”echo“a.Currentdateandtime”echo“b.Usercurrentlyloggedin”echo“c.Nameoftheworkingdirectory”echo“d.Contentsoftheworkingdirectoryn”echo-n“Ent

10、era,b,cord:”readanswerechocase“$answer”indate;who;pwd;ls;*)Echo“Thereisnoselection:$answer”;esac6、修改上题,使用户可以连续选择直到想退出时才退出。WhiletDoclearecho-e“nCOMMANDMENUn”echo“a.Currentdateandtime”echo“b.Usercurrentlyloggedin”echo“c.Nameoftheworkingdirectory”echo“d.Contentsoftheworkingdirectoryn”echo-n“Entera,b,co

11、rd:”readanswerechocase“$answer”indate;who;pwd;ls;return;*)Echo“Thereisnoselection:$answer”;esacdone7、编程使用select结构生成一个菜单如下:apple3)blueberry5)orange7)STOPbanana4)kiwi6)watermelonChooseyourfavoritefruitfromthesepossibilities:用户输入所选项,如1显示:Youchoseappleasyoufavorite.Thatischoicenumber1.参考程序#!/bin/bashPS3

12、=“Choseyourfavoritefruitfromthesepossibilities:”selectFRUITinapplebananablueberrykiwiorangewatermelonSTOPdoif$FRUIT=STOPthenecho“Thanksforplaying!”breakfiecho“Youchose$FRUITasyoufavorite.”echo“Thatischoicenumber$REPLY.”echodoneselect结构的语法如下:selectvarnameinargdocommandsdoneREPLY是键盘变量。8、上机编写如下代码,分析下面的

13、程序,简要说明整体功能,并解释每条语句。#!/bin/shval=1while(test$val-lt6)dotouchfile$valdatefile$valval=expr$val+1done9、编写一段shell程序,根据执行时候获取的当前时间显示出不同的问候信息。#!/bin/basha=date+%Hif(test$a-lt12);thenechoGoodMorning!elseechoGoodAfternoon!fi10、用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到/dev目录下myfile=/path/filename#换成你实际的文件全路径fd=ls-lmyfile#获取文件详细信息fp=$fd:0:1#截取第一个属性值$fp=c&cpmyfile/

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论