热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

作业管理【Ubuntushell】

作业管理: 每一条shell命令的输入--->一个作业cat -n /etc/hosts | more &作业,前台交互执行,后台无需交互加“&”-----

作业管理:



每一条shell命令的输入--->一个作业cat -n /etc/hosts | more &作业,前台交互执行,后台无需交互加“&”--------------------------------------jobs 【选项】 【作业号】:查看当前系统中后台作业-l:列出详细作业信息-s:列出停止暂停状态的作业-r:列出运行状态的作业vim &top &vim &jobs -l#[3]+ 23803 停止 (tty 输出) vim #[作业号]+第一个放置在后台 -第二个放在后台 23803进程PID号 #vim 原本需在前台交互,在后台会暂停-------------------------------------------------------------fg 作业号:使作业在前台执行bg 作业号:使作业在后台执行-----------------------------------------------------#!/bin/bashcount=$1while [ $count -gt 0 ]do count=$[ $count - 1 ]sleep 0.001doneecho "process $$finish." #$$ 当前脚本的进程PID号#process.sh------------------------------------------------- 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 +1min#wall linux广播 at -lbatch:在负载较大时,暂缓调度作业(source process.sh 10000 &);(source process.sh 10000 &);(source process.sh 10000 &)cat /proc/loadavgbatch#wall linuxat -l-----------------------------------------周期性作业:守护进程crond将周期性作业分类:全局作业、个人用户作业。sudo service crond statuscat /etc/crontabvim /etc/crontab#全局作业执行计划配置文件:/etc/crontab#作业执行计划模板:分钟(0-59) 小时(0-23) 日期(1-31) 月份(1-12) 星期(0-6,星期天0或7) 【用户名,如:root】 【执行的命令】 crontab 【选项】:维护个人用户的周期性作业计划文件-u:后加用户名参数,指定配置用户的cron作业执行计划文件-e:编辑当前用户作业执行计划-l:显示当前用户作业执行计划-r:删除当前用户的作业执行计划#个人用户作业执行计划配置文件:/var/spool/cron/用户名命名的cron文件----------------------------------制定监控登录用户人数的作业:#vim /etc/crontab---->:0-59 * * * * root 【命令】su root#!/bin/bash#ip1,ip2,limit作业执行的参数,表示过滤的IP地址范围和人数限制ip1="\(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/statiplogfi#保存olwatch.sh,/root/cron/olwatch.shwho#vim /etc/crontab------>0,15,30,45 * * * * root /root/cron/olwatch.shservice crond statuschmod u+x /root/cron/olwatch.shsource /root/cron/olwatch.shtail /var/log/statiplogdatetail /var/log/statiplog---------------------------------------------制定定期备份数据的作业计划:su root#!/bin/bashfilelist=`cat ${HOME}/cron/baklist` # $HOME:/rootstrdate=`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 ]# $?:表示最后整句之前运行的命令状态是否等于0# $?等于0表示上一个命令执行成功 否则执行出错# -ne:不等于thenecho "$strdate:copy for $filename failed" >> /var/log/baklogfifidone#cronbackup.sh--->/root/cron/cronbackup.sh保存vim /root/cron/baklist#编辑加上:/root/crontab#编辑加上:/etc/hostsdatevim /etc/crontab#--->编辑加上:10 11 3 * * root /root/cron/cronbackup.shdatels -R /rootcat /var/log/backlog #查看备份日志

补充:

其他资料:【Linux任务计划crontab】


推荐阅读
  • systemd-nspawn可以创建最轻量级的容器(ns的意思就是namespace),本文的实验平台是Ubuntu16.04,x86_64机器。本文的目的是:在Ubuntu中用syst ... [详细]
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • 31.项目部署
    目录1一些概念1.1项目部署1.2WSGI1.3uWSGI1.4Nginx2安装环境与迁移项目2.1项目内容2.2项目配置2.2.1DEBUG2.2.2STAT ... [详细]
  • 树莓派语音控制的配置方法和步骤
    本文介绍了在树莓派上实现语音控制的配置方法和步骤。首先感谢博主Eoman的帮助,文章参考了他的内容。树莓派的配置需要通过sudo raspi-config进行,然后使用Eoman的控制方法,即安装wiringPi库并编写控制引脚的脚本。具体的安装步骤和脚本编写方法在文章中详细介绍。 ... [详细]
  • 解决github访问慢的问题的方法集锦
    本文总结了国内用户在访问github网站时可能遇到的加载慢的问题,并提供了解决方法,其中包括修改hosts文件来加速访问。 ... [详细]
  • 深入解析Linux下的I/O多路转接epoll技术
    本文深入解析了Linux下的I/O多路转接epoll技术,介绍了select和poll函数的问题,以及epoll函数的设计和优点。同时讲解了epoll函数的使用方法,包括epoll_create和epoll_ctl两个系统调用。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • 本文介绍了在Android Studio中使用命令行build gradle的方法,并解决了一些常见问题,包括手动配置gradle环境变量和解决External Native Build Issues的方法。同时提供了相关参考文章链接。 ... [详细]
  • 本文介绍了在Ubuntu系统中清理残余配置文件和无用内容的方法,包括清理残余配置文件、清理下载缓存包、清理不再需要的包、清理无用的语言文件和清理无用的翻译内容。通过这些清理操作可以节省硬盘空间,提高系统的运行效率。 ... [详细]
  • 程序员如何选择机械键盘轴体?红轴和茶轴对比
    本文介绍了程序员如何选择机械键盘轴体,特别是红轴和茶轴的对比。同时还介绍了U盘安装Linux镜像的步骤,以及在Linux系统中安装软件的命令行操作。此外,还介绍了nodejs和npm的安装方法,以及在VSCode中安装和配置常用插件的方法。最后,还介绍了如何在GitHub上配置SSH密钥和git的基本配置。 ... [详细]
  • linux qt打开常用文件格式,设置Linux Qt文件默认打开方式为QtCreator
    Linux自定义文件打开方式也可参照文本抱歉,本文前段时间写的ubuntu下的Qt工程文件默认打开方式是不好用的,因为其他的文本文件也会受到影响,强迫症患者,每次打开Qt工程都是先 ... [详细]
author-avatar
0519bobo_724
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有