crontab

Jalankan Kerja Cron Setiap Minit

Jalankan Kerja Cron Setiap Minit
Sekiranya anda ingin menjalankan program atau skrip di latar belakang Linux maka kerja cron sangat penting. Dengan bantuan cron jobs, anda dapat menjalankan program atau skrip di latar belakang setelah selang waktu tertentu.

Mari kita lihat beberapa contoh kehidupan sebenar pekerjaan cron.

Terdapat banyak penggunaan pekerjaan cron lain di Linux.

Dalam artikel ini, saya akan menunjukkan kepada anda cara menjalankan tugas cron setiap minit di Linux. Saya akan menggunakan Debian 9 Stretch untuk demonstrasi. Tetapi anda boleh menggunakan sebaran Linux moden pilihan anda. Mari kita mulakan.

Asas Crontab:

Di Linux, anda tidak semestinya akar untuk menjalankan pekerjaan cron. Anda boleh menjalankan tugas cron seperti mana-mana pengguna. Setiap pengguna di Linux boleh menggunakan a crontab failkan untuk menjalankan kerja cron mereka sendiri.

Secara lalai, pengguna tidak mempunyai crontab fail di Linux. Anda boleh membuat a crontab fail dengan arahan berikut:

$ crontab -e

Sekiranya anda menjalankan perintah ini untuk pertama kalinya, maka anda diminta untuk memilih penyunting teks dari senarai. Saya akan memilih nano, yang lalai. Anda boleh memilih yang anda suka. Setelah selesai, tekan .

The crontab fail harus dibuat (jika belum tersedia) dan dibuka dengan editor teks kegemaran anda.  Sekarang anda boleh menambah pekerjaan cron anda sendiri di akhir fail ini dan setelah anda gembira, simpan saja dan keluar dari editor teks.

Sintaks Menjalankan Perintah Setiap Minit:

Sintaks bagi crontab fail adalah seperti berikut:

minit jam hariOfMonth bulan dayOfWeek commandToRun

Di sini,

Untuk menjalankan a perintahToRun arahan setiap minit, anda harus menulisnya di crontab fail seperti berikut:

* * * * * commandToRun

Menjalankan Pekerjaan Crob Setiap Minit:

Sekarang setelah kita mengetahui teori, mari tambah skrip ringkas pemasa.sh kepada crontab fail dan lihat bagaimana menguruskannya.

Di dalam pemasa.sh skrip, saya hanya mempunyai baris kod berikut. Yang dilakukannya hanyalah membuat fail baru / rumah / shovon / tong / pemasa.balak (jika belum ada) dan menambahkan output perintah tarikh kepadanya.

Sekarang mari kita tambahkan skrip ke crontab dan biarkan berjalan setiap minit dengan baris berikut:

* * * * * / rumah / shovon / tong / pemasa.sh

Sebaik sahaja anda menyimpan crontab fail dan keluar dari editor teks, yang baru crontab fail mesti dipasang.

Setelah satu minit berlalu, fail baru adalah pemasa.balak dibuat di direktori yang dikehendaki seperti yang anda lihat di bahagian bertanda gambar di bawah.

Daripada pemasa.balak fail log, jelas bahawa skripnya pemasa.sh berjalan setiap minit.

Kesalahan Menangkap dari Pekerjaan Cron:

Untuk menangkap kesalahan dari cron job, anda dapat mengirim kesalahan ke a kesilapan.balak fail dan output normal ke akses.balak fail misalnya. Sudah tentu anda boleh menamakan fail apa sahaja yang anda mahukan.

Untuk menunjukkan ini, saya mengubahsuai skrip saya pemasa.sh sedikit. Sekarang kesalahan dihantar ke kesilapan.balak fail di / rumah / sekop / tong sampah direktori dan output dihantar ke akses.balak di dalam / rumah / sekop / tong sampah direktori.

Pada mulanya / tmp / i_must_be_di sini fail tidak ada, jadi saya mendapat ralat di kesilapan.balak fail seperti yang anda lihat.

The akses.balak fail kosong buat masa ini.

Sekarang saya akan membuat fail / tmp / i_must_be_di sini

Dan seperti yang anda lihat, outputnya ada di akses.balak fail sekarang.

Sekiranya anda mahu, anda boleh mengarahkan output dan kesalahan dalam fail yang sama seperti berikut:

Seperti yang anda lihat, output STDIN dan STDERR dihantar ke keluar.balak fail.

Memastikan Pekerjaan Terakhir Selesai Berjalan Sebelum Menjalankan Pekerjaan Lagi:

Agar ini dapat berfungsi, anda boleh membuat fail sementara sejurus tugas bermula dan membuangnya sebelum selesai. Kemudian anda boleh memeriksa sama ada fail sementara ada sebelum memulakan tugas. Sekiranya berlaku, anda boleh keluar dari pekerjaan dan menjalankan tugas hanya apabila fail sementara tidak tersedia.

Skrip ringkas ini hanya berlaku.

Seperti yang anda lihat, pemasa.pid fail dibuat.

Membaca akses.balak fail membuktikan bahawa tugas cron tidak berjalan sebelum kerja cron sebelumnya selesai dijalankan. Seperti yang anda lihat, ia berjalan pada 01:32:01 dan lain kali ia berjalan pada 01:33:01, tetapi tidak. Sebaliknya, ia berjalan pada 01:35:01, kira-kira 3 minit kemudian.

Menyusun Output Pekerjaan Cron untuk Debugging Mudah:

Anda boleh memformat output dengan baik untuk membuat kerja cron anda lebih mudah untuk debug.

Contoh bagaimana ia dapat dilakukan diberikan dalam skrip berikut.

Seperti yang anda lihat, output, kesalahan dan mesej kejayaan dicetak dengan baik dalam fail log.

Anda boleh melakukan perkara yang menakjubkan dengan pekerjaan cron dan skrip shell. Saya menunjukkan beberapa idea di sini. Tetapi langit adalah had anda. Jangan ragu untuk bereksperimen dengan idea yang anda ada. Terima kasih kerana membaca artikel ini.

Cara memuat turun dan Mainkan Sid Meier's Civilization VI di Linux
Pengenalan permainan Civilization 6 adalah konsep moden mengenai konsep klasik yang diperkenalkan dalam siri permainan Age of Empires. Idea itu cukup ...
Cara Memasang dan Memainkan Doom di Linux
Pengenalan Doom Seri Doom berasal dari tahun 90an selepas pembebasan Doom yang asal. Ini adalah hit seketika dan sejak saat itu dan seterusnya siri pe...
Vulkan untuk Pengguna Linux
Dengan setiap kad grafik generasi baru, kami melihat pembangun permainan mendorong had kesetiaan grafik dan semakin dekat dengan fotorealisme. Tetapi ...