Cách tiết kiệm thời gian với cron: Hướng dẫn cơ bản và mã mẫu

Bài viết được viết bởi:
  • Hướng dẫn lưu trữ
  • Cập nhật: Có thể 09, 2019

Cron là gì?

Cron là một daemon Linux / UNIX được thiết kế để thực hiện một lệnh tại một thời điểm định trước. Vì cron là một daemon, một khi nó được thực hiện, nó không yêu cầu bất kỳ quản trị viên nào từ người dùng. Cron được kiểm soát bởi một tập hợp các tập tin được gọi là "cronfiles", dưới đây là danh sách các lệnh cron phổ biến.

Tên tệp Crontab Cài đặt tên tệp làm tệp crontab của bạn.
-e crontabChỉnh sửa tệp crontab của bạn.
crontab -lHiển thị tệp crontab của bạn.
crontab -rXóa tệp crontab của bạn.
[Email protected]Gửi email đầu ra đến địa chỉ được chỉ định.

Mỗi mục nhập vào tệp crontab sẽ bao gồm sáu trường sau được phân tách bằng dấu cách. Thứ tự của các trường cùng với mô tả ngắn gọn về từng trường được liệt kê bên dưới.
(các) giờ trong (các) ngày trong tuần (s) (các) ngày trong tuần

PhầnGiá trịMô tả
Phút0-59Xác định chính xác phút mà lệnh sẽ thực thi.
giờ0-23Xác định giờ trong ngày lệnh sẽ thực thi.
ngày1-31Xác định ngày của tháng mà lệnh sẽ thực thi.
tháng1-12Xác định tháng của năm mà lệnh sẽ thực thi.
Ngày thường0-6Xác định ngày trong tuần lệnh sẽ thực hiện.
Chủ Nhật = 0, Thứ Hai = 1, Thứ Ba = 2, Thứ Tư = 3, Thứ Năm = 4, Thứ Sáu = 5, Thứ Bảy = 6
LệnhĐặc biệtLệnh hoàn chỉnh sẽ được thực hiện.

Bạn cũng có thể sử dụng dấu * thay cho ký tự số của năm trường đầu tiên để biểu thị tất cả các giá trị pháp lý. Ví dụ, lệnh 0 0 * * 1, sẽ chạy một kịch bản vào mỗi thứ Hai.
Hầu hết phần này chỉ có liên quan nếu bạn đang chạy tập lệnh từ thiết bị đầu cuối lệnh trong Linux / UNIX, nếu bạn đang sử dụng cPanel, vui lòng xem phần "Làm thế nào để chạy tập lệnh cron từ cPanel" của tôi.

Làm thế nào tôi có thể tiết kiệm thời gian với cron?

Có rất nhiều cách bạn có thể sử dụng cron để tiết kiệm một số nhưng với tôi những nhiệm vụ hữu ích nhất mà bạn có thể lên lịch là chạy các tập lệnh sao lưu cơ sở dữ liệu và trang web. Cả hai công việc này có thể dễ dàng được thực hiện thủ công nhưng chúng thường được xem xét hơn. Với cron bạn có thể thiết lập chúng một lần và biết nó sẽ được thực hiện.

Dưới đây là các kịch bản mẫu bạn có thể sử dụng để thiết lập các công việc này với cron.

Tự động sao lưu trang web (Tập lệnh được cung cấp bởi Ubuntu)

# / Bin / sh

###################################

#

# Sao lưu vào NFS mount script.

#

###################################

# Sao lưu.

backup_files = "/ home / var / spool / mail / etc / root / boot / opt"

# Nơi để sao lưu.

dest = ”/ mnt / backup”

# Tạo tên tệp lưu trữ.

ngày = $ (ngày +% A)

hostname = $ (tên máy chủ -s)

archive_file = ”$ hostname- $ day.tgz”

# In thông điệp trạng thái bắt đầu.

echo “Sao lưu $ backup_files thành $ dest / $ archive_file”

ngày

bỏ lỡ

# Sao lưu các tập tin bằng cách sử dụng tar.

tar czf $ dest / $ archive_file $ backup_files

# In thông báo trạng thái kết thúc.

bỏ lỡ

echo “Sao lưu xong”

ngày

# Danh sách dài các tệp trong $ dest để kiểm tra kích thước tệp.

ls -lh $ dest

Tự động sao lưu cơ sở dữ liệu WordPress (Tập lệnh được cung cấp bởi Tamba2.org.uk)

#Set biến 4
#Replace SAU là gì = với thông tin từ tệp wp-config.php của bạn

DBNAME = DB_NAME

DBPASS = DB_PASSWORD

DBUSER = DB_USER

# Keep "xung quanh địa chỉ của bạn
EMAIL =[Email protected]_email.com

mysqldump –opt -u $ DBUSER -p $ DBPASS $ DBNAME> backup.sql
sao lưu gzip
DATE = `date +% Y% m% d`; mv backup.sql.gz $ DBNAME-backup- $ DATE.sql.gz
echo 'Tên Blog: Sao lưu myQuery của bạn được đính kèm' | mutt -a $ DBNAME-backup- $ DATE.sql.gz $ EMAIL -s MySQL MySQL Backup
rm $ DBNAME-backup- $ DATE.sql.gz

* Tuyên bố miễn trừ trách nhiệm: Chúng tôi không chịu trách nhiệm nếu tập lệnh không chạy đúng hoặc nếu bạn thiết lập không chính xác. Nếu bạn có bất kỳ câu hỏi hoặc thắc mắc nào về tập lệnh hoặc cách thiết lập nó, người liên hệ tốt nhất sẽ là nhà cung cấp máy chủ của bạn.

Làm thế nào để chạy một kịch bản cron từ cPanel của tôi?

1. Đăng nhập vào bạn cPanlel

2. Xác định vị trí biểu tượng “cron jobs” (Điều này thường nằm trong phần nâng cao).

3. Nhập địa chỉ E-Mail của bạn nếu bạn muốn một bản sao của đầu ra cây trồng được gửi qua email cho bạn.

4. Chọn thời điểm bạn muốn tập lệnh cron của mình chạy. (Chọn một mục từ hộp thả xuống “Cài đặt chung” sẽ điền vào các trường cho bạn.)

5. Nhập đường dẫn của tập lệnh bạn muốn chạy. (Lưu ý: Bạn sẽ cần tải tệp kịch bản lên máy chủ của mình, để biết thêm thông tin, vui lòng xem bên dưới - phần "Làm cách nào để tải lên tệp tập lệnh của tôi" để biết chi tiết).

6. Nhấp vào “Thêm công việc Cron mới”

7. Công việc cron của bạn bây giờ sẽ được liệt kê trong "Công việc Cron hiện tại".

Làm cách nào để tải lên tệp tập lệnh của tôi?

  1. Từ cPanel của bạn chọn "File Manager"
  2. Tiếp theo chọn “Home Directory” rồi nhấn “Go”
  3. Bây giờ chọn “Tải lên”.
  4. Đặt quyền tệp của bạn thành 755
  5. Nhấp vào "Duyệt"
  6. Duyệt đến thư mục có tập lệnh của bạn và nhấp vào tập lệnh, sau đó nhấp vào “Mở”.

Lưu ý: cPanel của bạn có thể được thiết lập khác với hình minh họa ở trên nhưng khái niệm tổng thể vẫn như cũ.

Giới thiệu về khách WHSR

Bài viết này được viết bởi một người đóng góp khách mời. Quan điểm của tác giả dưới đây hoàn toàn là của riêng mình và có thể không phản ánh quan điểm của WHSR.