24小时热门版块排行榜    

查看: 1052  |  回复: 8

hermit0308

铜虫 (初入文坛)

[求助] 再请教一个shell命令批处理问题

如题,我要批量运行程序:
#!/bin/bash
for((i=0;i<20;i++))
do
python $i.py
done
但是不要一次运行完,比如前五个运行完之后再运行后五个,这样能否实现?
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuisfp

金虫 (小有名气)

【答案】应助回帖


感谢参与,应助指数 +1
hermit0308: 金币+1, ★★★很有帮助 2012-08-28 22:46:24
#!/bin/bash                                                                                                                                                                           
                                                                                                                                                                                      
if [ $# == 0 ]; then                                                                                                                                                                  
   echo -e "USAGE:\n $0 n"                                                                                                                                                            
   exit 1                                                                                                                                                                             
fi                                                                                                                                                                                    
                                                                                                                                                                                      
for((i=$1;i<$1+5;i++))                                                                                                                                                               
do                                                                                                                                                                                    
    python $i                                                                                                                                                                           
done
2楼2012-08-28 20:35:10
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hermit0308

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by liuhuisfp at 2012-08-28 20:35:10
#!/bin/bash                                                                                                                                                                           
                ...

我脚本名为test,./test之后为什么只是输出:
USAGE:
./test n
没有运行程序呢?
3楼2012-08-28 21:19:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuisfp

金虫 (小有名气)

【答案】应助回帖


hermit0308: 金币+1, 有帮助 2012-08-28 22:46:08
引用回帖:
3楼: Originally posted by hermit0308 at 2012-08-28 21:19:51
我脚本名为test,./test之后为什么只是输出:
USAGE:
./test n
没有运行程序呢?...

需要跟一个数字。
比如
./test 1
将运行脚本1-5.py
4楼2012-08-28 21:29:53
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hermit0308

铜虫 (初入文坛)

引用回帖:
4楼: Originally posted by liuhuisfp at 2012-08-28 21:29:53
需要跟一个数字。
比如
./test 1
将运行脚本1-5.py...

哦,那就是还是要手工控制了,能不能实现自动运行完5个后再运行下面5个呢?
5楼2012-08-28 21:38:36
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuisfp

金虫 (小有名气)

引用回帖:
5楼: Originally posted by hermit0308 at 2012-08-28 21:38:36
哦,那就是还是要手工控制了,能不能实现自动运行完5个后再运行下面5个呢?...

不知道为什么有这样的需求
每五个程序间有联系?

你可以加入sleep 20

for((i=0;i<20;i++))
do
if [ $i == 5 ] || [ $i == 10 ] || [ $i == 15 ]; then
#运行完五个会睡眠20s再接着运行
    sleep 20
fi
python $i.py
done
6楼2012-08-28 22:01:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hermit0308

铜虫 (初入文坛)

引用回帖:
6楼: Originally posted by liuhuisfp at 2012-08-28 22:01:06
不知道为什么有这样的需求
每五个程序间有联系?

你可以加入sleep 20

for((i=0;i<20;i++))
do
if  ||  || ; then
#运行完五个会睡眠20s再接着运行
    sleep 20
fi
python $i.py
done...

谢了,我本来是考虑机子一下子跑不了这么多,你倒提醒了我,以后可以用到有联系的程序上。金币两枚收好!
7楼2012-08-28 22:44:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hermit0308

铜虫 (初入文坛)

引用回帖:
6楼: Originally posted by liuhuisfp at 2012-08-28 22:01:06
不知道为什么有这样的需求
每五个程序间有联系?

你可以加入sleep 20

for((i=0;i<20;i++))
do
if  ||  || ; then
#运行完五个会睡眠20s再接着运行
    sleep 20
fi
python $i.py
done...

但是好像后台 nohup python $i.py & 不行,前五个运行了20秒后还没跑完,后面的就接着开始运行了!

[ 发自手机版 http://muchong.com/3g ]
8楼2012-08-29 00:07:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuhuisfp

金虫 (小有名气)

引用回帖:
8楼: Originally posted by hermit0308 at 2012-08-29 00:07:00
但是好像后台 nohup python $i.py & 不行,前五个运行了20秒后还没跑完,后面的就接着开始运行了!
...

那你可以把时间设定长一点嘛
9楼2012-08-29 00:13:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 hermit0308 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 280求调剂 +11 咕噜晓晓 2026-03-18 12/600 2026-03-21 22:40 by ACS Nano——
[考研] 材料学硕301分求调剂 +7 Liyouyumairs 2026-03-21 7/350 2026-03-21 22:31 by peike
[考研] 化学工程321分求调剂 +18 大米饭! 2026-03-15 22/1100 2026-03-21 20:20 by HH领袖
[考研] 一志愿东华大学控制学硕320求调剂 +3 Grand777 2026-03-21 3/150 2026-03-21 19:23 by 简之-
[考研] 299求调剂 +5 shxchem 2026-03-20 7/350 2026-03-21 17:09 by ColorlessPI
[考研] 求调剂 +3 .m.. 2026-03-21 4/200 2026-03-21 16:25 by barlinike
[考研] 材料学学硕080502 337求调剂-一志愿华中科技大学 +4 顺顺顺mr 2026-03-18 5/250 2026-03-21 10:22 by luoyongfeng
[考研] 346求调剂[0856] +4 WayneLim327 2026-03-16 7/350 2026-03-21 04:02 by JourneyLucky
[考研] 083200学硕321分一志愿暨南大学求调剂 +3 innocenceF 2026-03-17 3/150 2026-03-21 02:35 by JourneyLucky
[考研] 华东师范大学-071000生物学-293分-求调剂 +3 研究生何瑶明 2026-03-18 3/150 2026-03-21 01:30 by JourneyLucky
[考研] 一志愿 西北大学 ,070300化学学硕,总分287,双非一本,求调剂。 +4 晨昏线与星海 2026-03-19 4/200 2026-03-20 22:15 by JourneyLucky
[考研] 药学383 求调剂 +3 药学chy 2026-03-15 5/250 2026-03-20 22:11 by 云游重阳
[考研] 一志愿武理材料工程348求调剂 +3  ̄^ ̄゜汗 2026-03-19 4/200 2026-03-20 21:01 by zhukairuo
[考研] 289求调剂 +6 怀瑾握瑜l 2026-03-20 6/300 2026-03-20 20:30 by 学员8dgXkO
[考研] 材料学求调剂 +4 Stella_Yao 2026-03-20 4/200 2026-03-20 20:28 by ms629
[考研] 08工学调剂 +5 用户573181 2026-03-20 5/250 2026-03-20 15:47 by xia_2003
[考研] 0703化学调剂 +5 pupcoco 2026-03-17 8/400 2026-03-19 13:58 by houyaoxu
[考研] 本科郑州大学物理学院,一志愿华科070200学硕,346求调剂 +4 我不是一根葱 2026-03-18 4/200 2026-03-19 09:11 by 浮云166
[考研] 【同济软件】软件(085405)考研求调剂 +3 2026eternal 2026-03-18 3/150 2026-03-18 19:09 by 搏击518
[考研] 考研调剂 +3 淇ya_~ 2026-03-17 5/250 2026-03-17 09:25 by Winj1e
信息提示
请填处理意见