实现:
//start.sh //开始10个进程
#!/bin/bash
./do10.sh >> log.log &
echo $! > COSDNA.pid //把后台启动的进程pid,保存起来
//stop.sh //停止运行的10个进程
#!/bin/bash
cat ./COSDNA.pid | xargs -IX kill -9 X
ps -a| grep php | awk '{print $1}'|xargs -IX kill -9 X
//do10.sh //网络开启10个进程采集
cp *.bak keylist.txt
declare -i snum=6;
for i in {1..$snum1}
do
php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
sleep $snum;php demo_topage.php `./get_one.sh`&
echo $i;
wait
//get_one.sh //实现每次从.txt文件中,独锁读取一行
flock -x /tmp/.start-cosdna.lock -c "sed -n '1p' keylist.txt;sed -i '1d' keylist.txt;";
//start.sh#!/bin/bash./do10.sh >> log.log &echo $! > COSDNA.pid//stop.sh#!/bin/bashcat ./COSDNA.pid | xargs -IX kill -9 Xps -a| grep php | awk '{print $1}'|xargs -IX kill -9 X
文章目录引言一、Sed工具概述二、Sed基本语法三、Sed用法示例1、输出指定的行1.1 Sed命令输出指定行1.2 Sed结合正则表达式输出指定行2、插入符合条件的行3、删除符合条件的行4、替换符合条件的文本4.1 字符串替换4.2 先备份再修改数据5、迁移符合条件的文本6、使用脚本编辑文件四、Sed应用案例1、调整vsftpd服务配置2、修改DNS配置文件2.1 修改主配置文件2.2 修改区域配置文件2.3 修改区域数据配置文件五、总结
在
Linux
/UNIX 系统中包含很多种类的文本处理器或文本
如图是一段
shell
脚本,这段程序,启动后会有5个
进程
(排除掉echo):ping、循环体、sleep $2、sleep$1,以及test.sh
进程
自身。
脚本名为test.sh,则对于其它4个
进程
来说,在test.sh执行完成之前,父
进程
就是test.sh,而当test.sh结束之后,父
进程
的ppid就变成了1.
1是init
进程
,由内核创建,任何
进程
的父
进程
结束之后,子
进程
都不会被主动...
& 命令是
后台
运行
指令,但如果用户退出终端后,命令也会退出。
nohup 命令可以使命令永久的执行下去,退出终端并不会影响命令的执行。
ps -ef 主要是查看服务器的
进程
信息,-e:等价于“-A”,表示列出全部的
进程
,-f:显示全部的列(显示全字段)。
kill
进程
PID 表示杀死
进程
。
nohup 命令 > output.log 2>&1 & 让命...
Shell
脚本中让
进程
休眠的方法(sleep用法)
有时候写
Shell
的脚本,用于顺序执行一系列的程序。 有些程序在停止之后并没能立即退出,就例如有一个 tomcat 挂了,就算是用 kill -9
命令也还没瞬间就结束掉。这么如果
shell
还没等其退出就接着执行下一行,这么就出乱子了。 刚知道了原来
shell
也能有 sleep 的参数。
sleep...
为什么要使程序在
后台
执行
我们计算的程序都是周期很长的,通常要几个小时甚至一个星期。我们用的环境是用putty远程连接到日本
Linux
服务器。所以使程序在
后台
跑有以下三个好处:
我们这边是否关机不影响日本那边的程序
运行
。(不会像以前那样,我们这网络一断开,或一关机,程序就断掉或找不到数据,跑了几天的程序只能重头再来,很是烦恼)
不影响计算效率
让程序在
后台
跑后,不会占据
A,
Shell
支持作用控制,有以下命令: 1. command& 让
进程
在
后台
运行
2. jobs 查看
后台
运行
的
进程
3. fg %n 让
后台
运行
的
进程
n到前台来 4. bg %n 让
进程
n到
后台
去; PS:"n"为jobs查看到的
进程
编号.
B.下列转:http://blog.chinaunix.net/u/1604/showart_1079559.html