Shell脚本 - 数学运算和循环

时间:2017-01-09 02:35:13

标签: mysql bash shell

我正在写一个sh文件来通过cron个作业来运行它,但是我不知道shell脚本,我想从mysql查询得到行数,然后除以200 , ceil 结果并从0开始循环到该数量。

经过长时间的搜索,我写了这一行来获取mysql查询中的行数,这很好。

total=`mysql database -uuser -ppassword -s -N -e "SELECT count(id) as total FROM users"`

但是我从谷歌那里得到的所有东西都没有帮助我完成我的工作,我测试了类似数学操作的“expr”和“let”方法,但我不知道为什么不工作。

即使我在Google上找到的循环示例也无效。

你能用这个脚本帮我吗?

1 个答案:

答案 0 :(得分:0)

我猜你正在使用Bash。以下是你如何划分:

#!/usr/bin/env bash
#    ^
#    |
#    |
#    --> This should be at the top of your script to make sure you run Bash

value=$((total / 200)) # total => value returned from mysql
for ((i = 0; i <= $value; i++)); do
    # your code here
done

Stackoverflow有很多例子。我建议您在这里查看Bash文档:https://stackoverflow.com/tags/bash/info