#!/bin/bash
ab=0
while (($ab < 5))
do
echo $ab
((ab++))
sleep 1
done
1、system(执行shell 命令)
相关函数 fork,execve,waitpid,popen
表头文件 #include<stdlibh>
定义函数 int system(const char string);
函数说明 system()会调用fork()产生子进程,由子进程来调用/bin/sh-c
string来执行参数string字符串所代表的命令,此命令执行完后随
即返回原调用的进程。在调用system()期间SIGCHLD 信号会被暂时
搁置,SIGINT和SIGQUIT 信号则会被忽略。
返回值 如果system()在调用/bin/sh时失败则返回127,其他失败原因返回-
1。若参数string为空指针(NULL),则返回非零值。如果system()调
用成功则最后会返回执行shell命令后的返回值,但是此返回值也有
可能为system()调用/bin/sh失败所返回的127,因此最好能再检查
errno 来确认执行成功。
附加说明 在编写具有SUID/SGID权限的程序时请勿使用system(),system()会
继承环境变量,通过环境变量可能会造成系统安全的问题。
例如:
#include<stdlibh>
main()
{
system(“ls -al /etc/passwd /etc/shadow”); //换成/testsh 可执行相关脚本
}
当然也可以用管道或exec函数族来调用shell
##1控制执行时间间隔:使用sleep:
echo hello
sleep 10s #等10秒
echo hello
sleep 10m #等10分钟
echo hello
sleep 10h #等10hour
echo hello
sleep 10d #等10days
##2控制执行时间点:使用crontab
Step 1:
使用命令crontab -e编辑一个定时执行的任务或在/var/spool/cron/crontabs目录下新建一个与自己用户名相同的任务
即:
#每隔一分钟执行一次后台程序tmpmail
/home/milch/tmpmail
顺便提一下crontab中的命令格式:
第一个 表示分钟 (0-59),
第二个 表示小时 (0-23),
第三个 表示月份中的某一天 (1-31),
第四个 表示一年中的某一月 (1-12),
第五个 表示一周中的星期几 (0-6 with 0=Sunday)
实例说明
# crontab -l
# DO NOT EDIT THIS FILE - edit the master and reinstall
# (/tmp/crontab3672 installed on Thu Jan 1 15:55:18 2004)
# (Cron version -- $Id: crontabc,v 213 1994/01/17 03:20:37 vixie Exp $)
0 0-23/6 /usr/bin/webalizer
30 3 /root/fbin/bak-web
#
先前曾提到,crontab 的格式分成六个部分,前五个是时间参数。在上例中你会发现除了数字与英文名称,有使用到符号"",这个符号代表每一单位的意思,譬如 30 3 既代表 30分 3点 每日 每月 星期的每天。
时间的指定,可以是单一的数字,或几个数字用逗号来连接。看下例
30 3,12 /root/fbin/bak-web
其中的第二项为 3,12,这代表 3 以及 12 小时的意思。再来看下例
30 /6 /root/fbin/bak-web
我把第二项改成 /6 这代表每 6 小时,也相当於 6,12,18,24 的作用。此外还有一个区段的做法
30 8-18/2 /root/fbin/bak-web
我把第二项改成 8-18/2 这代表在 8 小时到 18 小时之间每 2 小时,也相当於 8,10,12,14,16,18 的作用。
以上就是关于shell脚本 #!/bin/bash declare -i ab=0 while(($ab<5)) do echo $ab (($ab++)) sleep 1 done全部的内容,包括:shell脚本 #!/bin/bash declare -i ab=0 while(($ab<5)) do echo $ab (($ab++)) sleep 1 done、linux 中实现延迟45分钟后执行命令,写了一段c程序,实现延迟,接下来,该如何执行命令呢,也就是shell、linux shell 问题2等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)