CRM dan Platform DataAlat Pemasaran

Memahami dan Menggunakan Cron: Panduan Komprehensif untuk Menjadualkan Kerja

Cron, ringkasan untuk arahan dijalankan dalam talian, ialah penjadual kerja berasaskan masa yang berkuasa dalam sistem pengendalian seperti Unix. Istilah cron adalah permainan kata kronos or chronos, yang dalam mitologi Yunani mewakili masa. Nama cron untuk penjadual kerja berasaskan masa mencerminkan fungsinya untuk menjadualkan dan melaksanakan tugas pada masa atau selang waktu tertentu, menjadikannya rujukan yang sesuai kepada konsep masa dalam mitologi.

Cron membolehkan anda mengautomasikan tugasan berulang, melaksanakan skrip pada selang waktu tertentu dan mengekalkan kecekapan sistem. Panduan komprehensif ini akan membimbing anda melalui semua yang anda perlu ketahui tentang cron, daripada pemasangan hingga penggunaan, perbendaharaan kata utama dan sampel kod sebenar.

Jadual Kandungan

  1. Apa itu cron?
  2. Memasang Cron
  3. Konsep dan Terminologi Asas
  4. Sintaks Cron
  5. Contoh dan Kes Penggunaan
  6. Perangkap Biasa dan Amalan Terbaik
  7. Sumber cron tambahan

Apa itu Cron?

Cron ialah daemon (proses latar belakang) yang berjalan pada sistem berasaskan Unix, termasuk Linux dan macOS. Tujuan utamanya adalah untuk melaksanakan tugas yang dijadualkan secara automatik. Tugasan ini boleh terdiri daripada skrip ringkas kepada penyelenggaraan sistem dan sandaran.

Memasang Cron

Dalam kebanyakan sistem seperti Unix, cron diprapasang. Anda boleh menyemak ketersediaannya dengan membuka terminal dan menaip:

crontab -e

Jika arahan ini membuka editor jadual cron, anda telah memasang cron. Jika tidak, anda boleh memasangnya menggunakan pengurus pakej sistem anda. Sebagai contoh, pada Ubuntu, anda boleh menggunakan:

sudo apt-get install cron

Konsep dan Terminologi Cron

Sebelum menyelami penggunaan cron, mari kita fahami beberapa konsep dan terminologi penting:

Penjelasan Diagram Kron
  • Ketam: Ringkasan untuk meja cron, ia adalah fail yang mengandungi senarai tugas yang dijadualkan untuk pengguna.
  • Cronjob: Satu tugas atau arahan yang dijadualkan untuk dijalankan pada masa tertentu.
  • Bidang: Setiap cronjob mempunyai lima medan yang menentukan apabila kerja dijalankan:
    • Minit (0-59)
    • Jam (0-23)
    • Hari dalam bulan (1-31)
    • Bulan (1-12)
    • Hari dalam seminggu (0-7, di mana kedua-dua 0 dan 7 mewakili Ahad)

Sintaks Cron

Memahami sintaks entri crontab adalah penting. Ia mengikut corak:

* * * * * command-to-be-executed

Berikut ialah penjelasan ulasan yang boleh anda masukkan dalam tugas cron anda:

# +---------------- minute (0 - 59)
# | +------------- hour (0 - 23)
# | | +---------- day of month (1 - 31)
# | | | +------- month (1 - 12)
# | | | | +---- day of week (0 - 6) (Sunday=0 or 7)
# | | | | |
* * * * * /var/www/html/myscript.php

Setiap asterisk (*) mewakili medan dalam ungkapan cron. Contohnya, untuk menjadualkan kerja setiap hari pada 3:30 PM, anda akan menggunakan:

30 15 * * * command-to-be-executed

Contoh Cron dan Kes Penggunaan

Mari kita terokai beberapa contoh praktikal untuk menggambarkan penggunaan cron:

  • Menjalankan Skrip Harian: Untuk melaksanakan skrip setiap hari pada tengah malam, anda boleh menggunakan:
0 0 * * * /path/to/script.sh
  • Menjalankan Skrip Setiap Jam: Untuk tugasan setiap jam, gunakan:
0 * * * * /path/to/script.sh
  • Sandaran Mingguan: Untuk menjadualkan sandaran mingguan pada hari Ahad jam 2 pagi, gunakan:
0 2 * * 0 /path/to/backup-script.sh
  • Menjalankan Tugas pada Bulan Tertentu: Untuk menjalankan kerja hanya pada bulan Januari dan Julai pada jam 8:30 pagi:
30 8 * 1,7 * /path/to/script.sh

Perangkap Cron dan Amalan Terbaik

  • Pembolehubah Persekitaran: Pastikan tugas cron anda menyediakan pembolehubah persekitaran yang diperlukan, kerana tugas cron tidak mewarisi pembolehubah persekitaran shell anda.
  • Kebenaran: Pastikan anda menetapkan kebenaran kepada fail skrip anda sebagai boleh laku. Setiap kali saya menyimpan semula skrip saya, saya mendapati kebenaran saya perlu ditetapkan semula!
  • Pembolehubah Laluan: Tentukan laluan penuh kepada boleh laku dan skrip dalam tugas cron anda untuk mengelakkan isu dengan laluan relatif.
  • Ujian: Uji mereka dalam persekitaran yang selamat sebelum menyediakan tugas cron kritikal untuk memastikan ia berfungsi seperti yang diharapkan.
  • Pembalakan: Ubah hala output tugas cron anda ke fail log untuk menjejaki pelaksanaannya dan sebarang kemungkinan ralat.
0 0 * * * /path/to/script.sh >> /path/to/cron.log 2>&1

Tugas cron ini menjalankan skrip /path/to/script.sh setiap hari pada tengah malam, dan output (kedua-dua stdout dan stderr) yang dihasilkan oleh skrip dilampirkan pada fail log

/path/to/cron.log. Ini adalah amalan biasa untuk menangkap dan log keluaran kerja cron untuk tujuan pemantauan dan penyelesaian masalah. Mari pecahkan sintaks kerja cron khusus ini:

  • *0 0 * * *: Bahagian ini mentakrifkan jadual waktu kerja cron harus dijalankan. Dalam kes ini, ia dijadualkan berjalan setiap hari pada tengah malam (0 minit lewat 0 jam).
  • /path/to/script.sh: Ini ialah arahan atau skrip untuk dilaksanakan apabila tugas cron dijalankan. Contoh ini menunjukkan skrip yang terletak di /path/to/script.sh.
  • >> /path/to/cron.log: Bahagian ini mengubah hala keluaran standard (stdout) tugas cron ke fail log bernama cron.log terletak di /path/to/. Yang >> operator menambahkan output pada fail log, jadi jika fail itu tidak wujud, ia akan dibuat, dan jika ia sudah wujud, output akan ditambahkan pada penghujung fail.
  • 2> & 1: Ini digunakan untuk mengalihkan kedua-dua output standard (stdout) dan ralat standard (stderr) ke fail log yang sama. The 2 mewakili stderr, dan 1 mewakili stdout. Jadi, 2>&1 bermakna kedua-dua stdout dan stderr dialihkan ke fail log yang sama yang dinyatakan sebelum ini.

Cron ialah alat yang berharga untuk mengautomasikan tugas pada sistem berasaskan Unix. Dengan pilihan penjadualannya yang fleksibel, ia boleh memudahkan pentadbiran sistem dan meningkatkan kecekapan. Dengan memahami sintaksnya dan mengikut amalan terbaik, anda boleh memanfaatkan kuasa cron untuk mengautomasikan tugas rutin anda dengan berkesan.

Sumber Cron Tambahan

Douglas Karr

Douglas Karr ialah CMO daripada OpenINSIGHTS dan pengasas Martech Zone. Douglas telah membantu berpuluh-puluh syarikat permulaan MarTech yang berjaya, telah membantu dalam usaha wajar lebih $5 bilion dalam pemerolehan dan pelaburan Martech, dan terus membantu syarikat dalam melaksanakan dan mengautomasikan strategi jualan dan pemasaran mereka. Douglas ialah transformasi digital yang diiktiraf di peringkat antarabangsa dan pakar serta penceramah MarTech. Douglas juga merupakan pengarang buku panduan Dummie dan buku kepimpinan perniagaan yang diterbitkan.

Artikel yang berkaitan

Kembali ke atas butang
Tutup

Adblock Dikesan

Martech Zone mampu memberikan anda kandungan ini tanpa sebarang kos kerana kami mengewangkan tapak kami melalui hasil iklan, pautan ahli gabungan dan tajaan. Kami amat menghargai jika anda akan mengalih keluar penyekat iklan anda semasa anda melihat tapak kami.