GNU/Linux >> Belajar Linux >  >> Linux

Bagaimana saya bisa menjadwalkan tugas cron yang berjalan setiap 10 detik di linux?

Solusi 1:

Saya memiliki tugas serupa minggu lalu. Solusi saya adalah melipatgandakan entri cron standar ke frekuensi yang diinginkan. Crontab saya terlihat seperti:

* * * * * /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 10; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 20; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 30; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 40; /usr/local/bin/php /var/www/myscript.php
* * * * * sleep 50; /usr/local/bin/php /var/www/myscript.php

Jika Anda ingin memeriksa hasil myscript.php, mis. untuk debugging, cukup tambahkan

&> /tmp/myscipt.log

ke setiap baris di crontab di atas. Kemudian stderr dan stdout dialihkan ke file log.

Solusi 2:

Anda tidak dapat menjadwalkan pekerjaan setiap sepuluh detik, tetapi saya kira Anda dapat menjadwalkan pekerjaan untuk dijalankan setiap menit, dan tidur dalam satu lingkaran dalam interval 10 detik. Ini akan didasarkan pada perintah Anda diselesaikan sebelum interval sepuluh detik berakhir, atau Anda akan mendapatkan tumpang tindih saat perintah berikutnya dijalankan. Ini terasa seperti solusi yang genting, tetapi jika Anda dapat menjamin eksekusi yang sangat singkat dari perintah utama skrip, ini akan berhasil.

#!/bin/bash
i=0

while [ $i -lt 6 ]; do
  /run/your/command &
  sleep 10
  i=$(( i + 1 ))
done

Linux
  1. Bagaimana saya menggunakan cron di Linux

  2. Cara Menjalankan atau Mengulang Perintah Linux Setiap X Detik Selamanya

  3. Cara Menggunakan Format Cron Job untuk Menjadwalkan Tugas di Linux

  1. Jadwalkan Pekerjaan di Cron untuk Dijalankan Setiap Jam di Ubuntu 20.04 - Bagaimana cara menerapkannya?

  2. Menjalankan tugas cron di Linux setiap enam jam

  3. Bagaimana menjalankan tugas cron pada jam tertentu setiap hari?

  1. Bagaimana cara menginstruksikan cron untuk menjalankan pekerjaan setiap minggu kedua?

  2. Bagaimana saya bisa membuat tugas cron baru secara terprogram?

  3. Bagaimana cara mengatur tugas cron untuk menjalankan yang dapat dieksekusi setiap jam?