为了编写批量导入数据的程序,故而学习编写shell脚本!现学现用!php
============================================shell
一、第一个简单的for循环bash
#!/bin/bash
for i in 1 2 3 4;
do
echo $i;
donecurl
二、测试for的自增加的循环:oop
#!/bin/bash
for ((i=1; i<=5; i++))
do
echo $i;
done学习
若是会报错,没有则跳过:测试
Syntax error: Bad for loop variableurl
缘由:代码对于标准bash而言没有错,由于Ubuntu为了加快开机速度,用dash代替了传统的bash,是dash在捣鬼。spa
解决方法:取消dash.net
dpkg-reconfigure dash
出现弹框,选择NO
参考原文详情,解决报错:
http://blog.csdn.net/yf210yf/article/details/9206185
三、实战:批量执行php文件 - 单进程
#!/bin/bash
for ((i=1; i<=1000; i++))
do
echo `curl http://localhost/add.php?page=$i &`;
done
// 使用echo能够看到输出结果,下图中“add-end-0”为个人test.php程序运行完一次的输出结果
四、进阶:多进程!!!
#!/bin/bash
for ((i=1; i<=1000; i++))
do
{
echo `curl http://localhost/add.php?page=$i &`;
}& ## 重点:添加了 & ,将for循环里的执行语句,集合起来!!!
done
wait ## 重点:最后加个wait,手机号执行语句后,一块执行!!!
关于更多多进程详解,参看:
http://www.jb51.net/article/116952.htm
================================
实行:
time bash test.sh ## 重点:最后执行的时候,加个 time , 会计算出脚本执行的时间。