Sign in Welcome! Log into your account your username your password Forgot your password? Get help Password recovery Recover your password your email A password will be e-mailed to you. TopDev
Tìm việc IT
Tạo CV Online
CÔNG TY TUYỂN DỤNG IT
Lập Trình
AI – Machine Learning
Frontend
Backend
Fullstack
Mobile
Product
Devops
Java
PHP
Python
Xu hướng công nghệ
Tổng quan ngành IT
Báo cáo thị trường IT
Con đường sự nghiệp IT
Chuyên gia nói
Sự kiện IT
Developer Resources
Sách lập trình
Tài liệu lập trình
Source Code
KỸ NĂNG TÌM VIỆC
Kinh nghiệm phỏng vấn
Chuẩn hóa CV IT
Đàm phán lương thưởng
Cẩm nang tuyển dụng
Tìm kiếm nhân tài
Nghệ thuật quản trị
HomeCông nghệNhững lệnh crontab thường dùng
Công nghệ
Lập Trình
FacebookLinkedinTelegram
Bài viết được sự cho phép của tác giả Lê Chí Dũng
Tổng quan
Định nghĩa:
Cron là một tiện ích cho phép thực hiện các tác vụ một cách tự động theo định kỳ, ở chế độ background của hệ thống
Crontab (cron tab) là một file chứa đựng các thông tin config của schedule của các task được chạy
Mục đích bài này:
Sử dụng cron job để chạy background process trên Server
Building Microservices Application - Phần 1: Sử dụng Netflix Eureka, Ribbon và ZuulBuilding Microservices Application - Phần 3: Xác thực API bằng Oauth 2.0
Crontab trên Server
Crontab (cron table)
Trên server Cron files được lưu trong thư mục /var/spool/cron, cấu trúc giống như trên các os unix-like khác.
Các lệnh dùng với crontab:
crontab -e: tạo hoặc chỉnh sửa file crontab crontab -l: hiển thị file crontab crontab -r: xóa file crontab
Nếu server chưa có crontab cần install:
# Install: yum install cronie # Start crontab và tự động chạy mỗi khi reboot: systemctl start crond chkconfig crond on
Cấu trúc:
* * * * * owner command to execute 1 * * * * * owner command to execute 2 * * * * * owner command to execute 3
Giải thích
┌───────────── minute (0 - 59) │ ┌───────────── hour (0 - 23) │ │ ┌───────────── day of month (1 - 31) │ │ │ ┌───────────── month (1 - 12) │ │ │ │ ┌───────────── day of week (0 - 6) (Sunday to Saturday; │ │ │ │ │ 7 is also Sunday) │ │ │ │ │ │ │ │ │ │ * * * * * owner command to execute
Setup schedule for cron tab
Schedule
Description
Format
yearly
Run once a year at midnight of 1 January
0 0 1 1 *
monthly
Run once a month at midnight of the first day of the month
0 0 1 * *
weekly
Run once a week at midnight on Sunday morning
0 0 * * 0
daily
Run once a day at midnight
0 0 * * *
hourly
Run once an hour at the beginning of the hour
0 * * * *
Example
# Run a task for every Friday at 17:01pm 1 17 * * 5 /var/cron/pkgtabs/shutdown_server_and_go_drinking # Run db_export_dump at 23:45 (11:45 PM) every Saturday 45 23 * * 6 /var/cron/pkgtabs/db_export_dump # Run task for every hours 0 * * * * /var/cron/pkgtabs/send_mail
Config crontab
Để crontab tự động chạy cần kích hoạt và cấu hình crontab như sau:
crontab -e # Sau đó nhập nội dung # Chạy cron đơn giản, repeat theo từng giờ crontab 0 * * * * $(OWNER) /var/share/point_tool/task1.sh # Chạy cron tab theo từng phút, đồng thời tại lock để tránh trường hợp task chạy chồng lên nhau (task xữ lý chưa hết thời gian thì task sau đến thời điểm chỉ định sẽ không được chạy crontab * * * * * $(OWNER) /usr/bin/flock -n /var/point_tool/cron/task2.lockfile php /var/share/point_tool/task2.php --minutely >> /var/log/cron/task2.log
Trong đó
/usr/bin/flock -n /path/to/lockfile tạo file lock cho task, chống chạy nhiều task một lúc
–minuly lock task theo phút
Execute crontab
Có thể start crontab ở console như sau:
# Run a task for every Friday at 17:01pm 1 17 * * 5 /var/cron/pkgtabs/shutdown_server_and_go_drinking # Run db_export_dump at 23:45 (11:45 PM) every Saturday 45 23 * * 6 /var/cron/pkgtabs/db_export_dump # Run task for every hours 0 * * * * /var/cron/pkgtabs/send_mail Bài viết gốc được đăng tải tại lcdung.topCó thể bạn quan tâm:
Tìm hiểu các thông số cấu hình Cron job
Tổng hợp những câu lệnh SQL cơ bản
20 trường hợp sử dụng lệnh Docker cho developer
Xem thêm Việc làm IT hấp dẫn trên TopDev
ĐỪNG BỎ LỠ
Tổng hợp các lệnh Linux dùng để xử lý các vấn đề
Tận dụng ưu thế cơ sở vật chất tại Techcombank: Nền tảng Machine Learning on-premise mang lại khả năng phân tích dữ liệu mạnh mẽ
Data is all about orchestration (Tầm quan trọng của việc điều phối khi làm việc với dữ liệu)
Viết Reminder Parser dùng Rust
Những lệnh GIT thường sử dụng từ cơ bản đến nâng cao
VIỆC LÀM IT LƯƠNG CAO
Việc làm PHP
Việc làm JavaScript
Việc làm Java
Việc làm Front-end
Việc làm Back-end
Việc làm .NET
Việc làm Python
Việc làm Golang
Việc làm iOS
Việc làm Android
Việc làm Flutter
Việc làm Tester
Việc làm Node.js
ABOUT USTopDev is a recruitment network and ecosystem in Mobile & IT fields. We are top leading recruitment network in Mobile & IT fields, in Vietnam, offering Tech talent solution which meets your needs. Our networks cover 95% of Tech communities in Vietnam and our clients come from both Vietnam and South East Asia. Hotline: 0888 1555 00 Contact us: [email protected]FOLLOW USFacebookLinkedinTwitter