First, summarize the detailed usage method of the task plan (at, crontab) on Linux system;
1. At command:
To host a job that runs in the future time:
Support for using job queues:
The default is a queue;
At [option] ... Time
Time:
(1) Absolute time
HH:MM,
Mmdd[cc]yy, Mm/dd/[cc]yy, dd.mm.[cc]yy or [cc]yy-mm-dd
Tomorrow
(2) Relative time
now+ #UNIT
Minute, hour, day, week
(3) Blur time
Midnight
Noon
Teatime
Common options:
-Q queue:at Job queue;
-f/path/from/somefile: Reads the job to be run from the specified file;
-L: View a list of such running jobs in the job queue; equivalent to using the ATQ command;
-C At_job_num: Look at the contents of the running job;
-D: Delete the specified job; equivalent to ATRM
Batch
The system chooses to run the specified task when the resource is more idle;
2. Crontab: Recurring Task plan
Daemon: Crond
There are two types of recurring tasks:
(1) System cron task; There is no default running user identity, so you need to specify the additional runner;
/etc/crontab
Vim command
# Example of Job definition:
#.----------------Minute (0-59)
# |.-------------Hour (0-23)
# | |.----------DAY of Month (1-31)
# | | |.-------month (1-12) OR jan,feb,mar,apr ...
# | | | |.----DAY of Week (0-6) (sunday=0 or 7) or Sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * * user-name command to be executed
7 fields:
Top 5 fields: Point in time
User-name: Run the task as a user
command to being executed: to run a task
(2) User Cron Task: Submitted by a user, the default is to run as the submitter, so there is no need to specify the additional runner;
/var/spool/cron/username
VIM command; not recommended
crontab Command: Recommended
# Example of Job definition:
#.----------------Minute (0-59)
# |.-------------Hour (0-23)
# | |.----------DAY of Month (1-31)
# | | |.-------month (1-12) OR jan,feb,mar,apr ...
# | | | |.----DAY of Week (0-6) (sunday=0 or 7) or Sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
5 Time points:
Minutes: valid value range 0-59;
Hours: 0-23
Day: 1-31
Month: 1-12
Weeks: 0-7
Note: The date of the month and the number of weeks, not recommended to use at the same time;
For example:
6 * * * *
Time notation:
*: Each time point in the valid value range of the time point;
-: A specific continuous time range, 3-7
,: A discrete point in time, 3,5,7
/#: The amount of time in a valid time frame, for specifying the frequency;
1-30/4, */4
5 */3 * * */bin/echo "howdy"
5 7 * * 1-5/bin/echo "Howdy"
crontab command:
crontab [-u user] [-l |-r |-e]
-u User: Not to manage your own cron task, but to specify the target user's cron task; Root has the ability to manage other users ' cron tasks; default management of their own;
-l:list, list the tasks;
-r:remove to remove all tasks;
-e:edit, edit, open a default editor for the current shell session to edit the cron task table;
Complementary tools: Anacron:
Attention:
(1) If you do not want to receive notification messages for task execution results:
COMMAND >/dev/null
COMMAND &>/dev/null
(2) for crontab file,% has a special function, if the command will appear in the%, remember to escape, or use single quotation marks to its reference;
(3) Crontab's path variable is not exactly the same as the user's variable, so it is recommended that the task in cron use an absolute path
/root/bin/a.sh
Second, every Monday to Saturday 3:20 A.M., run the CP command to save the/etc/directory for archiving, storage location is/backups/etc-yyyy-mm-dd;
[Email protected] ~]# mkdir/backups
[Email protected] ~]# CRONTAB-E
* * 1-6/bin/tar-czvf/backups/etc.$ (date +%y-%m-%d) tar.gz/etc/
650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M02/72/CE/wKiom1XtZ5vxm_IHAABP_rACL_Q488.jpg "/>
Third, every Sunday 2:30 A.M., run the CP command to backup the/etc/fstab file, the storage location is/backup/fstab-yyyy-mm-dd-hh-mm-ss;
[Email protected] ~]# crontab E
* * 7/BIN/CP-/etc/fstab/backup/fstab-$ (date +%y-%m-%d-%h-%m-%s)
650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M00/72/CA/wKioL1XtacWTLU7LAACIMLgXmPE138.jpg "/>
Four, every night 12 o'clock, get all lines in the/proc/meminfo file that begin with S or M, append to the/statistics/meminfo.txt file, and precede the daily message with a similar =============== separator line;
[Email protected] ~]# crontab E
XX * * */bin/echo =============== >/statistics/meminfo.txt&&/bin/egrep "^s|^m"/proc/meminfo >>/ Statistics/meminfo.txt
650) this.width=650; "src=" http://s3.51cto.com/wyfs02/M00/72/CE/wKiom1XtZ52SomnEAADRtLy-uFs569.jpg "/>
Linux OPS Practice-September 5, 2015 Course assignments