作业管理:
每一条shell命令的输入--->一个作业cat -n /etc/hosts | more &作业,前台交互执行,后台无需交互加“&”--------------------------------------jobs 【选项】 【作业号】:查看当前系统中后台作业-l:列出详细作业信息-s:列出停止暂停状态的作业-r:列出运行状态的作业vim &top &vim &jobs -l-------------------------------------------------------------fg 作业号:使作业在前台执行bg 作业号:使作业在后台执行-----------------------------------------------------count=$1while [ $count -gt 0 ]do count=$[ $count - 1 ]sleep 0.001doneecho "process $$finish." ------------------------------------------------- vim & top &source process.sh 10000 &jobs -lfg process.sh的作业号jobs -lbg process.sh作业号jobs -l---------------------------------------一次性作业service atd status:at [选项】 【作业执行时间】:指定时间执行一次作业-l:列出队列中的作业-c:后加作业号参数,查看指定作业号的内容-f:后加所要执行的作业的文件路径-d:删除指定的作业号,参数作业号at now +1minat -lbatch:在负载较大时,暂缓调度作业(source process.sh 10000 &);(source process.sh 10000 &);(source process.sh 10000 &)cat /proc/loadavgbatchat -l-----------------------------------------周期性作业:守护进程crond将周期性作业分类:全局作业、个人用户作业。sudo service crond statuscat /etc/crontabvim /etc/crontabcrontab 【选项】:维护个人用户的周期性作业计划文件-u:后加用户名参数,指定配置用户的cron作业执行计划文件-e:编辑当前用户作业执行计划-l:显示当前用户作业执行计划-r:删除当前用户的作业执行计划----------------------------------制定监控登录用户人数的作业:su rootip1="\(192\.168\.126\.[1-9]\)"ip2="\(192\.168\.126\.[1-9][0-9]\{1,2\}\)"limit=0strdate=`date "+%Y-%m-%d %H:%M:%S" `count1=`who | grep $ip1 | wc -l`count2=`who | grep $ip2 | wc -l`count=$[ $count1 + $count2 ]if [ $count -gt $limit ]thenecho "$strdate:current users count:$count,exceed limit:$limit" >> /var/log/statiplogfiwhoservice crond statuschmod u+x /root/cron/olwatch.shsource /root/cron/olwatch.shtail /var/log/statiplogdatetail /var/log/statiplog---------------------------------------------制定定期备份数据的作业计划:su rootfilelist=`cat ${HOME}/cron/baklist` strdate=`date "+%Y%m"`backupdir=${HOME}/backup${strdate}if [ ! -e $backupdir ]then mkdir $HOME/$backupdirfiecho "$strdate:backup start,the directory name is $backupdir" >> /var/log/baklogfor filename in $filelistdoif [ -e $filename ] then cp $filename "$backupdir/" 2 > /dev/nullif [ $? -ne 0 ]thenecho "$strdate:copy for $filename failed" >> /var/log/baklogfifidonevim /root/cron/baklistdatevim /etc/crontabdatels -R /rootcat /var/log/backlog
补充:
其他资料:【Linux任务计划crontab】