linux上机练习十.doc

  1. 1、本文档共4页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
linux上机练习十

上机练习十 完成下列的脚本练习。 1、请编写一个脚本,其功能是将当前用户的根目录下的work目录打包为名为“user’s-workdir-in-YYMMDD”的tar包 要求:i)若该目录不存在,显示“dir not exist” ii)若该文件不是目录类型,显示“work is a type”,此处的type为文件类型 #!/bin/bash [ -e /work ] tar -cvf Users-workdir-in-YYMMDD.tar /work || echo dir not exist declare filetype= [ -f /work ] filetype=常规文件 [ -d /work ] filetype=目录文件 [ -b /work ] filetype=块设备文件 [ -c /work ] filetype=字符设备 [ -S /work ] filetype=套接字文件 [ -p /work ] filetype=FIFO(管道)文件 [ -L /work ] filetype=连接文件 [ $filetype != ] echo work is a $filetype 2、编写一个脚本,其中包含一个打印函数,用于将多次输入的字符组合为一个字符串 要求:i)使用函数实现新值的输出 ii)使用循环语句完成多个字符的输入,直到输入字符串EOF才完成字符串的累加 #!/bin/bash function add() { str=$str$input echo $str } read -p 请输入一个字符串或者输入EOF结束本次操作: input declare str while [ $input != EOF ] do add read -p 请输入一个字符串或者输入EOF结束本次操作 input done 3、自我练习:设计一个运算器,用来完成下列功能 i)四则运算:符号使用+、-、*、/ ii)逻辑位运算:符号使用、|、~ iii)乘方运算:0次、1次、2次、3次、4次、5次幂,幂级和底数均由用户给出 #!/bin/bash read -p “选择一种运算(输入数字):1.四则运算2.逻辑位运算3.幂运算:” n if [ “$n” == “1” ]; then read -p 请输入第一个数: n1 read -p 请输入一个操作运算符(+、-、*、/): fuhao read -p 请输入第二个数: n2 declare -i y let “y=$n1$fuhao$n2” echo “$n1$fuhao$n2=$y” fi elif [ “$n” == “2” ]; then read -p 请输入位运算第一个数: w1 read -p 请输入一个操作运算符(,|,~): fuhao2 read -p 请输入位运算第二个数: w2 declare yy if [ $fuhao2 == ];then let “yy=$w1$w2” echo $w1$fuhao2$w2=$yy elif [ $fuhao2 == | ];then let “yy=$w1|$w2” echo $w1$fuhao2$w2=$yy elif [ $fuhao == ~ ];then let “yy=$w1~$w2” echo $w1$fuhao2$w2=$yy else echo 您的运算符输入错误 fi elif [ “$n” == “3” ]; then read -p 请输入幂级: m1 read -p 请输入幂底数: m2 declare yyy let “yyy=$m1**$m2” echo “ $m2的$m1次幂为$yyy” fi 4、自我练习:判断两个给定文件的新旧程度 要求:i)用户输入两个文件的名称 ii)分别判断这两个文件是否存在 iii)判断这两个文件的类型是否相同 iv)判断这两个文件的拥有者操作权限是否相同 v)若这两个文件都存在,且类型和操作权限都相等,则将较新的文件复制到目录/tmp中,若两者的时间相同,则不做复制操作 #!/bin/bash type1= type2= right1= right2= read -p 请输入第一个文件的路径: f1 if [ ! -e $f1 ]; then echo $f1不存在,请检查后重试 fi read -p 请输入第二个文件的路径: f2 if [ ! -e

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档