- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4实验四_shell程序设计 2
实验四shell程序设计
实验目的
理解shell操作环境
掌握shell程序编写方法
实验内容
练习、理解下面命令
alias
alias ld=’ls -ld .’
history 20
!!
var1=”abcd1234”
echo ${var1:3:4}
echo $HOME
var2=$HOME
echo ”我的主目录是$var2”
set -x
ls *sh
arr1=(long live chair mao)
echo ${arr1[1]}
arr2=(`date`)
echo ${arr2[3]}
test $? -eq 0 || echo ”上面命令执行失败。”
{ date;pwd;tty;stty; }
编写shell程序
文件名webs.sh,在120.95.134.104主机建立个人主页空间;(提示:按照命令行操作命令和顺序编辑程序文件)
#! /bin/bash
# webs.sh
cd $HOME
mkdir public html
chmod o=rx
exit 0
文件名adds.sh,实现多个数值相加;(提示:多个数值通过参数提供)
#! /bin/bash
# adds.sh
s=0
for I in $*
do
((s=s+i))
done
echo $s
exit 0
文件名cleardirs.sh,删除指定目录下的文件和子目录;
#! /bin/bash
# cleardirs.sh
cd $1
x=’ls’
for y in $x
if [-d $y]
then rm –fR $y
else rm –f $y
fi
done
exit 0
文件名clearfile.sh,删除指定目录下的文件及其子目录下的文件;(提示: 使用find命令查找目录下文件)
#! /bin/bash
# clearfile.sh
x=’find $1’
for y in $x
do
[-d $y]||{
rm –f $y
}
done
exit 0
文件名feb.sh,显示费波纳奇数列 1 1 2 3 5 8 13 21 ...
#! /bin/bash
# feb.sh
a=1
b=1
echo –n $a $b
for((n=20;n0;n--))
do
echo –n “$((a+b))”
c=0
c=$((a+b))
done
exit 0
3. 阅读理解程序
120.95.134.104主机,/var/xg11x/adduser.sh
#! /bin/bash
cat xg11.text|while read x
do
u=($x)
adduser ${u[0]}
echo ${u[0]} | passwd ${u[0]}
--stdin /dev/null
done
exit 0
撰写实验报告
这次的实验内容比较多,在做实验的时候有很多不懂的地方。
对于第一个部分,首先比较不理解的就是echo ${var1:3:4}命令,仔细查阅书上,但是也没有发现这个解释,问过老师以后才知道原来的显示var1数组中从第三个字符开始截取四个字符。
然后就是set -x命令,才明白原来是设置解释的开关。
然后就是关于花括号{}的使用,由于当时没有及时复习,所以对各种括号的使用不是很理解,在做练习的时候没有在“{”后面打上空格,做了好几遍都显示不正确,最后试了试了加了空格才做出来,但是当时还是不是很理解,后来看书的时候才真正明白了花括号和圆括号的区别和具体用法了。
在做的命令的时候,我会试着把命令以不同的形式输进去,然后再看输出有什么不同,就比如说echo ${arr1[1]}命令,当时我觉得花括号的使用时没有必要的,所以当时我就把花括号给去掉了,但是发现输出结果不一样,去掉花括号后输出的结果是long[1],即它只是把arr1给当成命令解释了,也就是吧arr1和[1]分成了两个部分来执行了,这时才知道花括号的重要性。
在编写shell程序的时候,觉得非常的迷茫,完全不知道从哪里下手,尤其是第一个程序编写,也就是建立个人主页空间,当时知道老师有讲过这个问题,在课堂上也给我们演示过,但是由于当时没有认真听,而且也没有做笔记,所以下课后就又给忘记了,没有办法,只好请教老师再给讲解一下,幸好老师的的精心讲解,对这个问题比较清楚了。
对于后面的几个程序编写,由于当时没有时间写,所以打算下课后写,但是由于懒惰,在我还没自己写了时候老师就对这些题进行了讲解,所以在做后面这几道题的时候我就是先阅读理解了一些老师的代码,然后敲进电脑里面进行试验,但是当时不知道为什么,也不知道把什么给删了,我再登陆的时候就跟以前的登陆画面不一样了,幸好课堂上老师有专门讲解这个问题,我就讲老师目录下的文件复制到我的目录下面,然后
文档评论(0)