shell 脚本实现变量累加

本文介绍了Shell脚本中变量的递增操作方法,并通过一个具体的示例展示了如何使用until循环来计算数值之和。此外,还提供了一个实用的脚本用于从远程服务器获取文件,该脚本具备重试机制以确保文件获取的成功率。
1、语法
((i=i+1));
 x=$(( $x + 1 ))
 x=`expr $x + 1`
注意:expr 运算和空格
2、实例
until example
 #bin/bash
 i=1
 s=0
 until [[ i -gt 30 ]];
 do
           ((s=s+i));
           ((i=i+1));
 done
3、实现取文件5次,如果还不成功退出
#!/bin/sh
./etc/profile
. ~/.bash_profile
date=`date -d yesterday +"%Y%m%d"`
getcount=1
echo "$date日期开始取文件"
echo `date +"%Y%m%d-%H:%M:%S"`"开始获取文件"
rm -rf ${date}_4800_WoAccountRec*.REQ
SERVER=192.168...#请换成自己的ip地址和用户密码
USERNAME=user
PASSWORD=pw
/usr/bin/ftp -n $SERVER < user $USERNAME $PASSWORD
cd /WoAccountRec/$date/
binary
verbose
prom off
mget *
close
quit
EOF
filecount=`ls -l $date*|wc -l`
echo "获取文件的个数是$filecount"
while [[ "$filecount" -eq '0' ]]
do
echo `date +"%Y%m%d-%H:%M:%S"`"再${getcount}次开始获取文件"
echo "没有获取到1个文件程序循环等待1分钟!"
getcount=`expr $getcount + 1`  #累加变量
#((getcount=getcount+1))
if [[ $getcount -eq 5 ]]; then   #判断是否是到5次了,如果到了就退出程序脚本
exit 
fi
sleep 1m
SERVER=192.168...
USERNAME=user
PASSWORD=pw
/usr/bin/ftp -n $SERVER < user $USERNAME $PASSWORD
cd /WoAccountRec/$date/
binary
verbose
prom off
mget *
close
quit
EOF
filecount=`ls -l $date*|wc -l`
done
echo "你好!取文件成功了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值