shell 例子

#!/bin/bash##date:2010/08/24#filename:demo.sh#----------------------------- 第一题------------------------function_one(){				#判断文件是否存在		if ! [ -e $1 ]		then			echo "files is not exist"			exit		fi 				#获取文件后缀		#-f. 表示以短点为分隔符		#print 表示打印 $nf 当前中的记录数		postfix=`echo $1 | awk -f. '{print $nf}'`				#将文件后缀换成小写字母		lpostfix=`echo $postfix | tr a-z a-z`				#注意 每个分支结束需要';;'结尾		case $lpostfix in		  tar ) 		    tar -xvf $1;;		  gz ) 		    tar -zxvf $1		    if [ $? = 0 ]		    then		       gzip -df $1		    fi;;		  bz2 ) 		    tar -jxvf $1;;		  z )  		    compress -d $1;;		  * )		    echo "not decompressing!!"  		esac				echo "decompressing files succeed!"}#function_one $1#-----------------------------第一题 end---------------------------#-----------------------------第二题------------------------------res=1function_two(){	if [ $1 -gt 0 ]	then	 res=`expr $res \* $1`		 function_two `expr $1 - 1`  fi	}#function_two $1#echo "10!=$res" #-----------------------------第二题 end---------------------------#-----------------------------第四题 ------------------------------v_shift=1v_temp=1function_four(){	while [ $# -gt 0 ]	do				v_temp=`echo $@ | awk -f' ' '{print $1}'`		v_shift=`expr $v_shift \* $v_temp`				shift	done }#function_four $@#echo "参数之积为:$v_shift "#-----------------------------第四题 end---------------------------#-----------------------------第五题 ------------------------------function_five(){	v_i=$1	v_total=0	while [ $v_i -gt 0 ]	do				if ! [ `expr $v_i % 3` = 0 ]		then		  v_i=`expr $v_i - 1`			continue			fi		v_total=`expr $v_total + $v_i`		echo $v_i		v_i=`expr $v_i - 1`	done}#function_five $1#echo "0-$1内可以整除3的数据之和为:$v_total"#-----------------------------第五题 end---------------------------#-----------------------------第六题 ------------------------------#定时没有实现function_six(){  #需要备份的目录	backup=./log/	#备份后的文件存在目录	cpdir=./backup/log/		if ! [ -d $cpdir ]	then		mkdir -p $cpdir	fi	  filename=`date -d today +"%y%m%d"`   filename=backup_${filename}.tar.gz    tar -zcvf $filename $backup  mv ./$filename $cpdir      if [ $? = 0 ]  then  	echo "备份成功"  fi		}#function_six#-----------------------------第六题 end---------------------------#-----------------------------第九题---------------------------function_nie(){   v_i=1      while [ $v_i -le 9  ]    do      v_j=1   		while [ $v_j -le $v_i ]   		do   		  echo -n "$v_j * $v_i = `expr $v_i \* $v_j` "   			v_j=`expr $v_j + 1`   		done   		echo ""   		v_i=`expr $v_i + 1`   done}function_nie#-----------------------------第九题 end---------------------------
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值