shell脚本语句练习题
更新时间:2024-07-03 10:21:01 阅读量: 综合文库 文档下载
Shell脚本练习题
1、编写shell脚本,计算1-100的和
1 #!/bin/bash
2 #caculate the sum of numbers from 1 to 100 3
4 sum=0
5 for i in `seq 1 100`; do 6 sum=$[$sum+$i] 7 done
8 echo $sum
2、编写shell脚本,要求输入一个数字,然后计算出从1到输入数字的和,要求,输入的数字小于1则重新输入,直到输入正确的数字为止。
1 #! /bin/bash 2 j=0
3 while [ $j -lt \
4 read -p \请输入数字不能小于\5 done 6 sum=0
7 for i in `seq 1 $j`;do 8 sum=$[$i+$sum] 9 done
10 echo $sum
3、编写shell脚本,把/root/目录下的所有目录拷贝到/tmp/目录下。 1. #! /bin/bash
2. for i in `ls /root/`;do 3. if [ -d $i ];then 4. cp -r $i /tmp/ 5. fi 6. done
4、编写shell脚本,批量建立用户user_00,user_01,…,user_100并且所有用户属于users组。 1. #! /bin/bash 2. i=0
3. for i in `seq 1 100`;do 4. userdel -r user_0$i 5. done 5、编写shell脚本,截取文件test.log中包含关键词”abc”的行中的第一列(假设分隔符为”:”),然后把截取的数字排序(假设第一列为数字),然后打印出重复次数超过10次的列。
1. 2. 3. 4. #! /bin/bash
awk -F':' '$0~/abc/ {print $1}' test.log >/tmp/n.txt sort -n n.txt |uniq -c |sort -n >/tmp/n2.txt awk '$1>10 {print $2}' /tmp/n2.txt
6、编写shell脚本,判断输入的IP是否正确(IP的规则是,n1,n2,n3,n4,其中1 1. #! /bin/bash 2. checkip() { 3. if echo $1 |egrep -q '^[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}$' ; then 4. a=`echo $1 | awk -F. '{print $1}'` 5. b=`echo $1 | awk -F. '{print $2}'` 6. c=`echo $1 | awk -F. '{print $3}'` 7. d=`echo $1 | awk -F. '{print $4}'` 8. for n in $a $b $c $d; do 9. if [ $n -ge 255 ] || [ $n -le 0 ]; then 10. echo \ 11. return 2 12. fi 13. done 14. else 15. echo \ 16. return 1 17. fi 18. } 19. rs=1 20. while [ $rs -gt 0 ]; do a) read -p \ b) checkip $ip c) rs=`echo $?` 21. done 22. echo \ 7、自动编译安装httpd服务器的脚本 1. #!/bin/bash 2. 3. 4. 5. 6. 7. # 自动编译安装httpd服务器的脚本 cd /usr/src/httpd-2.2.17/ ./configure --prefix=/usr/local/httpd --enable-so &> /dev/null make &> /dev/null make install &> /dev/null # …… 8、 查看内存占用情况 #!/bin/bash USED=$(free | grep \ TOTAL=$(free | grep \USAGE=$(expr $USED \\* 100 / $TOTAL) echo \实际内存占用情况:$USAGE%\ 9、备份文件,及使用情况 #!/bin/bash TARFILE=beifen-`date +%s`.tgz tar zcf $TARFILE $* &> /dev/null echo \已执行 $0 脚本,\ echo \共完成 $# 个对象的备份\echo \具体内容包括: $*\ 10、MySQL数据库逻辑备份脚本 #!/bin/bash # 这是一个简化的MySQL数据库逻辑备份脚本 # 1. 定义数据库连接、目标库信息 MY_USER=\MY_PASS=\ MY_HOST=\ MY_CONN=\MY_DB1=\MY_DB2=\ # 2. 定义备份目录、工具、时间、文件名主体 BF_DIR=\ BF_CMD=\BF_TIME=`date +%Y%m%d-%H%M` NAME_1=\NAME_2=\ # 3. 先导出为.sql脚本,然后再进行压缩(打包后删除原文件) cd $BF_DIR/ $BF_CMD $MY_CONN --databases $MY_DB1 > $NAME_1.sql $BF_CMD $MY_CONN --databases $MY_DB2 > $NAME_2.sql /bin/tar zcf $NAME_1.tar.gz $NAME_1.sql --remove &> /dev/null /bin/tar zcf $NAME_2.tar.gz $NAME_2.sql --remove &> /dev/null 11、查看cup,用户,及内存情况 #!/bin/bash echo \echo \ echo \12、查看用户是否为root用户,是否能查看磁盘 #!/bin/bash if [ \then echo \错误:非root用户,权限不足!\ exit 1 fi fdisk -l /dev/sda 13、查看是否安装sysstat监控软件,及安装 #!/bin/bash rpm -q sysstat &> /dev/null if [ $? -eq 0 ] then echo \已安装 `rpm -q sysstat`\else echo \未安装,尝试自动安装\ RHEL_DIR=\ if [ -d $RHEL_DIR ] then cd $RHEL_DIR rpm -ivh sysstat-*.rpm && echo \安装完成。\ else echo \错误:无法访问光盘目录:$RHEL_DIR\ fi fi
正在阅读:
shell脚本语句练习题07-03
西盟县中小学(幼儿园)校领导,财务人员岗前培训方案03-08
小学一年级期末班主任的评语08-23
新德标、欧盟标准、国际标准与旧德标对照表07-18
现代遗传学习题(已做)05-06
散文吧_经典散文诗歌,散文精选08-01
30吨两级DTRO技术方案 - 图文11-01
中考英语易错题精选06-26
- 天大砼方案 - 图文
- 农业科技网络书屋能力提升_玉米错题选
- DNS习题
- 浅议检察官对罪犯谈话的技巧与效果
- 高考语文文言文翻译专题训练
- AB类学科竞赛目录(2015)
- 建筑面积计算新规定(2015最新)
- Revit2012初级工程师题集一
- 十三五项目米线可行性报告
- 2013体育学院党组织建设工作总结
- 2014Revit工程师题库
- 高中数学如何实施研究性学习
- 茶艺表演 中英互译
- 小学音乐湘文艺版 四年级下册 第十一课《(歌表演)脚印》优质课公
- 山西省农村合作经济承包合同管理条例
- 2015年镇江市中考化学一模试题参考答案及评分标准(定稿)
- 统计 题集
- 批评意见清单
- 8潞安集团蒲县黑龙关煤矿矿业公司2
- 鄂教版四年级语文上册复习精要(光谷四小)
- 练习题
- 语句
- 脚本
- shell
- 锂电池生产项目立项申请报告
- 动物防疫条件合格证办理程序
- AThematicStudyofARoseforEmily大学论文
- 药学导论复习题
- 2010年养猪的环境控制新措施大总结(53)
- 2011年中考数学模拟试题及答案(1)
- 高锰酸钾法测定中钙的含量
- 植物生物学总结
- 超声波检测基础知识
- 钢结构加固方案 - 图文
- 担保信息披露制度
- SDS-PAGE电泳实验步骤
- 甲级单位编制集成电路设计计算机辅助应用软件项目可行性报告(立
- 传感器件项目可行性研究报告(案例模板) - 图文
- 碳水化合物的测定方法
- 2017年春尔雅大学启示录课后题及答案
- 人教版小学五年级下册语文句子排序练习题附答案
- 清远市土地利用规划、城市总体规划
- 干粉砂浆项目验收监测
- 浙江省镇海中学2008学年第二学期期末考试试卷高一化学