Cara mengeksekusi pekerjaan interval kurang dari 1 menit menggunakan penjadwal berbasis waktu cron

Cara mengeksekusi pekerjaan interval kurang dari 1 menit menggunakan penjadwal berbasis waktu cron

Penjadwal berbasis waktu Linux Cron secara default tidak melakukan pekerjaan dengan interval yang lebih pendek dari 1 menit. Konfigurasi ini akan menunjukkan kepada Anda trik sederhana cara menggunakan penjadwal berbasis waktu cron untuk menjalankan pekerjaan menggunakan interval detik. Mari kita mulai dengan dasar -dasar. Pekerjaan cron berikut akan dieksekusi setiap menit:

* * * * * Tanggal >> /tmp /cron_test 

Pekerjaan di atas akan dieksekusi setiap menit dan memasukkan waktu saat ini ke dalam file /tmp/cron_test. Sekarang, itu mudah! Tapi bagaimana jika kita ingin menjalankan pekerjaan yang sama setiap 30 detik? Untuk melakukan itu, kami menggunakan cron untuk menjadwalkan dua pekerjaan yang persis sama tetapi kami menunda pelaksanaan pekerjaan kedua menggunakan tidur Perintah selama 30 detik. Misalnya:

* * * * * Tanggal >> /tmp /cron_test * * * * * tidur 30; Tanggal >> /tmp /cron_test 

Apa, yang terjadi di atas adalah bahwa Cron Scheduler mengeksekusi kedua pekerjaan pada saat yang sama, namun, pekerjaan cron kedua akan memiliki 30 detik eksekusi shell tertunda. Menggunakan ide yang sama di atas, kami juga dapat menjadwalkan interval eksekusi pekerjaan cron 15 detik:

* * * * * tidur 15; Tanggal >> /tmp /cron_test * * * * * tidur 30; Tanggal >> /tmp /cron_test * * * * * tidur 45; Tanggal >> /tmp /cron_test * * * * * tidur 60; Tanggal >> /tmp /cron_test 

Sekarang, bagaimana dengan 5 detik? Sama di sini tapi itu akan sedikit lebih mengetik jadi saya sarankan untuk menggunakan bash untuk loop untuk menghasilkan daftar cron kami. Perintah Linux berikut akan membuat daftar cron untuk dieksekusi Tanggal >> /tmp /cron_test dalam interval 5 detik:

# untuk saya dalam $ (SEQ 5 5 60); do (crontab -l; echo " * * * * * tidur $ i; tanggal >> /tmp /cron_test") | crontab -; Selesai 


Menggunakan crontab -l Untuk melihat semua pekerjaan yang dijadwalkan cron Anda:

# crontab -l # m h dom mon dow perintah * * * * * tidur 5; Tanggal >> /tmp /cron_test * * * * * tidur 10; Tanggal >> /tmp /cron_test * * * * * tidur 15; Tanggal >> /tmp /cron_test * * * * * tidur 20; Tanggal >> /tmp /cron_test * * * * * tidur 25; Tanggal >> /tmp /cron_test * * * * * tidur 30; Tanggal >> /tmp /cron_test * * * * * tidur 35; Tanggal >> /tmp /cron_test * * * * * tidur 40; Tanggal >> /tmp /cron_test * * * * * tidur 45; Tanggal >> /tmp /cron_test * * * * * tidur 50; Tanggal >> /tmp /cron_test * * * * * tidur 55; Tanggal >> /tmp /cron_test * * * * * tidur 60; Tanggal >> /tmp /cron_test 

Selanjutnya, periksa /tmp/cron_test berkas keluaran:

# Cat /TMP /Cron_Test Sabtu 20 Agustus 06:32:06 UTC 2016 Sabtu 20 Agustus 06:32:11 UTC 2016 Sabtu 20 Agustus 06:32:16 UTC 2016 Sabtu 20 Agustus 06:32:21 UTC 2016 Sabtu 20 Agustus 06 : 32: 26 UTC 2016 Sabtu 20 Agustus 06:32:31 UTC 2016 Sabtu 20 Agustus 06:32:36 UTC 2016 Sabtu 20 Agustus 06:32:41 UTC 2016 Sabtu 20 Agustus 06:32:46 UTC 2016 Sabtu 20 Agustus 06 : 32: 51 UTC 2016 Sabtu 20 Agustus 06:32:56 UTC 2016 Sabtu 20 Agustus 06:33:01 UTC 2016 Sabtu 20 Agustus 06:33:06 UTC 2016 Sabtu 20 Agustus 06:33:11 UTC 2016 Sabtu 20 Agustus 06 : 33: 16 UTC 2016 Sabtu 20 Agustus 06:33:21 UTC 2016 

Tutorial Linux Terkait:

  • Cara menjalankan perintah secara berkala dengan anacron di linux
  • Cara membuat pekerjaan cron di kubernetes
  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Cara mengatur tanggal dan waktu di almalinux
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Cara mengatur crontab untuk mengeksekusi setiap 5 menit
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Waktu skrip dan prosedur bash Anda dari dalam kode
  • Cara mengatur/mengubah zona waktu di almalinux
  • Cara Rollback Pacman Pembaruan di Arch Linux