Crontab di Linux: CONTOH Penjadualan Kerja

Isi kandungan:

Anonim

Apa itu crontab?

Cron dinamakan dengan kata Yunani "Chronos" yang digunakan untuk masa. Ini adalah proses sistem yang secara otomatis akan melakukan tugas sesuai dengan jadwal tertentu. Ini adalah sekumpulan perintah yang digunakan untuk menjalankan tugas penjadualan biasa. Crontab bermaksud "cron table". Ini memungkinkan untuk menggunakan penjadual kerja, yang dikenal sebagai cron untuk melaksanakan tugas.

Crontab juga merupakan nama program, yang digunakan untuk mengedit jadual itu. Ia didorong oleh file crontab, file config yang menunjukkan perintah shell untuk berjalan secara berkala untuk jadual tertentu.

Dalam tutorial sistem Operasi ini, anda akan belajar:

  • Apa itu crontab?
  • Mengapa menggunakan CRONJOB?
  • Bagaimana cara menggunakan cron di Linux?
  • Format Linux Crontab
  • Cara Menambah / Mengubah Crontab
  • Cara Menyenaraikan Crontab
  • Contoh Crontab Penting

Mengapa menggunakan Cronjobs?

Berikut adalah sebab untuk menggunakan Cronjobs di Linux:

  • Membantu OS untuk mengambil sandaran fail log atau pangkalan data yang dijadualkan.
  • Padamkan fail log lama
  • Arkib dan hapus jadual pangkalan data
  • Hantarkan e-mel pemberitahuan seperti Surat Berita, e-mel tamat tempoh Kata Laluan
  • Pembersihan data cache secara berkala
  • Crontab adalah pilihan ideal untuk mengautomasikan pekerjaan Unix.
  • Ia digunakan untuk mengautomasikan penyelenggaraan sistem

Bagaimana cara menggunakan cron di Linux?

Pek sistem Linux mempunyai penjadual tugas yang berguna bernama crontab. Crontab popular kerana dapat dijadualkan untuk menjalankan proses automatik sebagai root. Oleh itu, menjalankan proses automatik sebagai root menjadikan perubahan sistem lebih mudah. Anda hanya perlu menukar tugas dan kemudian tunggu sehingga tugas itu dimulakan semula.

Format Linux Crontab

Crontab of Linux mempunyai enam bidang. Lima bidang pertama menentukan waktu dan tarikh pelaksanaan, dan medan ke-6 digunakan untuk pelaksanaan perintah.

Sintaks crontab:

[Minute] [hour][Day_of_the_Month][Month_of_the_Year][Day_of_the_Week][command]

  • Astrics (*): Gunakan untuk memadankan
  • Tentukan julat: Membolehkan anda menentukan julat dengan bantuan kata hubung seperti 1-10 atau 30-40 atau jan-mar, mon-wed.
  • Tentukan pelbagai julat: Membolehkan anda menentukan pelbagai julat dengan perintah yang dipisahkan seperti apr-jun, oct-dec.

Cara Menambah / Mengubah Crontab

Pengguna boleh mengedit pekerjaan crontab mereka dengan bantuan perintah crontab berikut:

$ crontab -u -e

Perintah di atas akan membuka konfigurasi crontab peribadi sistem komputer anda, yang dapat diedit dengan menggunakan editor teks lalai anda.

Tidak perlu memulakan semula crontab anda kerana ia akan mengambil perubahan anda secara automatik apabila anda menggunakan perintah berikut.

$ crontab -l

Untuk membuang tugas crontab anda, gunakan arahan berikut.

$ crontab -r

Untuk menambah atau mengemas kini tugas di crontab, gunakan arahan yang diberikan di bawah ini.

crontab -e

Perintah untuk mengedit crontab pengguna lain

crontab -u username -e

Cara Menyenaraikan Crontab

Perintah untuk melihat entri crontab pengguna semasa

crontab -l

Perintah untuk melihat entri crontab pengguna tertentu:

crontab -u username -l

Contoh Crontab Penting

Berikut adalah beberapa contoh penting Crontab

Penerangan Perintah
Perintah Cron untuk melakukan pelbagai tugas penjadualan. Perintah yang diberikan di bawah dilaksanakan pada pukul 7 pagi dan 5 petang setiap hari.
0 7,17 * * * /scripts/script.sh
Perintah untuk melaksanakan cron setiap 5 minit.
*/5* * * * * /scripts/script.sh
Perintah penjadual masa membantu anda melaksanakan tugas pada setiap hari Isnin jam 5 pagi. Perintah ini berguna untuk melakukan tugas mingguan seperti pembersihan sistem.
0 5 * * mon /scripts/script.sh
Perintah menjalankan skrip anda pada selang 3 minit.
*/3 * * * * /scripts/monitor.sh
Perintah untuk menjadualkan cron yang akan dilaksanakan untuk bulan tertentu. Perintah ini untuk menjalankan tugas dijalankan pada bulan Februari, Jun dan September. Kadang-kadang kita perlu menjadualkan tugas untuk melaksanakan tugas bulanan terpilih.
* * * feb,jun,sep * /script/script.sh
Perintah untuk dilaksanakan pada hari yang dipilih. Contoh ini akan dijalankan pada setiap hari Isnin dan Rabu jam 5 petang.
0 17 * * mon,wed /script/script.sh
Perintah ini membolehkan cron melaksanakan pada hari Sabtu pertama setiap bulan.
0 2 * * sat [ $(date +%d) -le 06 ] && /script/script.sh
Perintah untuk menjalankan skrip selama selang 6 jam sehingga dapat dikonfigurasi seperti di bawah.
0 */6 * * * /scripts/script.sh
Perintah ini menjadualkan tugas yang harus dilaksanakan dua kali pada hari Isnin dan Selasa. Gunakan tetapan berikut untuk melakukannya.
0 4,17 * * mon,tue /scripts/script.sh
Perintah menjadualkan cron untuk dilaksanakan selepas setiap 15 Saat.
* * * * * /scripts/script.sh* * * * * sleep 15; /scripts/script.sh
Perintah untuk menjadualkan tugas setiap tahun. Cap waktu @tahun adalah = hingga "0 0 5 1 *". Ini melaksanakan tugas pada minit kelima setiap tahun. Anda boleh menggunakannya untuk menghantar ucapan selamat tahun baru.
@yearly /scripts/script.sh
Perintah tugas untuk dilaksanakan setiap bulan. Cap waktu @bulan sama dengan "0 0 1 * *". Ungkapan perintah ini memungkinkan pelaksanaan tugas pada minit pertama bulan ini.
@monthly /scripts/script.sh
Perintah untuk melaksanakan pelbagai tugas menggunakan satu cron.
* * * * * /scripts/script.sh; /scripts/scrit2.sh
Perintah untuk menjadualkan tugas yang akan dilaksanakan setiap minggu. Cap waktu @ mingguan serupa dengan "0 0 4 * matahari". Ini digunakan untuk melaksanakan tugas mingguan seperti pembersihan sistem dll.
@weekly /bin/script.sh
Tugas akan dijadualkan untuk dilaksanakan setiap hari. Cap waktu @ harian serupa dengan "0 2 * * *". Ia melaksanakan tugas pada minit kedua setiap hari.
@daily /scripts/script.sh
Membolehkan tugas dilaksanakan setiap jam. Cap waktu @hourly serupa dengan "0 * * * *". Perintah ini melaksanakan tugas pada minit pertama setiap jam.
@hourly /scripts/script.sh
Membolehkan tugas dilaksanakan pada sistem reboot. Ekspresi @reboot berguna untuk tugas-tugas yang ingin dijalankan oleh sistem pada permulaan sistem anda. Ini berguna untuk memulakan latar belakang tugas secara automatik.
@reboot /scripts/script.sh

Ringkasan:

  • Cron dinamakan dengan kata Yunani "Chronos" yang digunakan untuk masa.
  • Cronjobs membantu OS untuk mengambil sandaran berjadual fail log atau pangkalan data.
  • Pek sistem Linux mempunyai penjadual tugas yang berguna bernama crontab yang dapat dijadwalkan untuk menjalankan proses automatik sebagai root.
  • Crontab of Linux mempunyai enam bidang. Lima bidang pertama menentukan waktu dan tarikh pelaksanaan, dan medan ke-6 digunakan untuk pelaksanaan perintah.