Manfaatkan perintah crontab Linux untuk mengotomatiskan berbagai tugas duniawi dan berulang, menyederhanakan hidup Anda. Alat yang luar biasa dan mudah digunakan ini, dikombinasikan dengan beberapa skrip, tidak hanya dapat mengotomatiskan semua jenis tugas, tetapi juga membantu menghindari kesalahan manusia sederhana atau kelupaan.

Di sini Anda akan mempelajari apa itu crontab, cara menambahkan pekerjaan otomatis, dan beberapa contoh dunia nyata.

Apa Itu Crontab?

Crontab adalah proses daemon yang berjalan di latar belakang pada hampir semua mesin Linux, dan digunakan untuk menjadwalkan dan menjalankan tugas otomatis pada interval waktu yang ditentukan. Ini juga sering digunakan oleh pengembang perangkat lunak untuk menjalankan tugas yang memakan waktu di latar belakang.

Ini bisa apa saja termasuk tetapi tidak terbatas pada mengirim email batch, memeriksa feed Twitter Anda, melakukan backup, atau sekadar melakukan pengingat.

Perintah Dasar Crontab

Setiap pengguna Linux di komputer memiliki file crontab mereka sendiri, yang berisi tugas crontab aktif mereka. Berikut adalah beberapa perintah terminal dasar yang akan Anda gunakan untuk melihat dan memodifikasi file crontab:

instagram viewer

  • crontab-l Buat daftar semua pekerjaan crontab.
  • crontab -e Edit file crontab.
  • crontab -r Hapus semua entri dari file crontab.

Perintah di atas akan untuk file pengguna saat ini file crontab. Jika Anda perlu mengubah file crontab pengguna lain, cukup gunakan -u pilihan. Misalnya, Anda dapat mengedit file jdoe file crontab pengguna dengan perintah:

Ubuntu Linux: Tambah dan Hapus Pengguna ke Grup dengan Cara Mudah

Ingin mengelola pengguna dengan lebih baik di Ubuntu Linux? Jawabannya adalah dengan membuat grup, kemudian gunakan fitur tambah pengguna Ubuntu.

sudo crontab -ujdoe -e

Format Pekerjaan Crontab

Setiap pekerjaan crontab terdiri dari satu baris, dan diformat sebagai berikut:

MINUTE HOUR DAY MONTH WEEKDAY COMMAND

Tabel di bawah ini menjelaskan berbagai elemen pekerjaan crontab:

Elemen Ranage Deskripsi
Menit 0 - 59 Menit untuk menjalankan tugas crontab di.
Jam 0 - 23 Jam untuk menjalankan tugas crontab di.
Hari 1 - 31 Hari dalam sebulan untuk melaksanakan tugas crontab di.
Bulan 1 - 12 Bulan untuk menjalankan tugas crontab di.
Hari kerja 0 - 6 Hari dalam seminggu untuk melaksanakan tugas crontab di.
Perintah Perintah Linux apa pun yang dapat Anda jalankan di terminal.

Anda dapat menggunakan tanda bintang (*) di salah satu bidang untuk menunjukkan karakter pengganti, yang berarti tugas crontab akan dijalankan terlepas dari jangka waktu tersebut. Misalnya, tugas crontab di bawah ini akan dijalankan setiap malam tepat pada pukul 3:20:

20 3 * * * /root/backup.sh

Beberapa Nilai

Setiap periode waktu juga dapat mencakup banyak elemen. Anda dapat menentukan nilai yang tepat dengan memisahkannya dengan koma, dan tugas crontab di bawah ini akan dijalankan setiap jam pada 20 dan 50 menit setelah satu jam:

20,50 * * * * /path/to/command.sh

Namun, jika Anda ingin menjalankan tugas crontab pada interval tertentu dalam jangka waktu tertentu, Anda dapat menggunakannya */TITIK, dan tugas crontab di bawah ini akan secara otomatis dijalankan pada 15 menit setelah satu jam setiap tiga jam:

15 * / 3 * * * /path/to/command.sh

Menjaga Pekerjaan Crontab Tetap Tenang

Semua tergantung, Anda mungkin ingin menghapus semua output dari tugas crontab agar tidak berakhir di folder email sistem Anda. Anda dapat melakukan ini dengan menambahkan > / dev / null 2> & 1 ke pekerjaan crontab apa pun. Sebagai contoh:

0 6 15 * * /path/to/backup.sh> / dev / null 2> & 1

Menambahkan Pekerjaan Crontab

Umumnya, metode yang paling banyak digunakan untuk menambah atau memodifikasi pekerjaan crontab adalah crontab -e perintah. Jalankan perintah ini di terminal:

crontab -e

Ini akan membuka file editor teks seperti nano dengan konten file crontab Anda. Setiap tugas crontab berada pada satu baris, dan Anda dapat menambah, memodifikasi, dan menghapus baris sesuai keinginan. Setelah selesai, simpan dan tutup file dengan menekan Ctrl + W, diikuti oleh Y dan Memasukkan kunci, yang akan segera mengaktifkan semua pekerjaan crontab di dalam file.

Pintasan untuk Menambahkan Pekerjaan

Alih-alih memodifikasi file crontab secara manual, ada satu perintah cepat yang dapat Anda jalankan untuk menambahkan pekerjaan. Misalnya, jika Anda ingin menambahkan tugas crontab ini yang dijalankan setiap hari Minggu pukul 14.00:

0 14 * * 0 /path/to/command.sh

Anda dapat menambahkan pekerjaan ke file crontab Anda dengan satu perintah:

(crontab -l; echo "0 14 * * 0 /path/to/command.sh";) | crontab

Perintah di atas hanya mencantumkan semua pekerjaan yang saat ini ada di file crontab Anda, mencetak pekerjaan baru, dan memasukkan semuanya ke dalamnya crontab mengganti isinya.

Mendaftar / Menghapus File Crontab

Anda dapat mencantumkan semua pekerjaan yang saat ini aktif dalam file crontab Anda dengan perintah:

crontab -l

Anda juga dapat menghapus semua pekerjaan crontab dan mengosongkan konten file crontab Anda dengan perintah:

crontab -r

Contoh: Mainkan Suara!

Butuh pengingat cepat setiap dua jam saat bekerja untuk memberi tahu Anda bahwa waktu telah berlalu? Ambil klip audio favorit Anda dalam hampir semua format (.wav, .mp4, apa saja), dan jika disimpan di (misalnya) /home/myuser/myalert.wav memilikinya secara otomatis dimainkan dengan pekerjaan crontab:

0 * / 2 * * * aplay /home/myuser/myalert.wav

Bagaimana kalau memberi Anda pengiriman yang bagus dari pekerjaan minggu ini dengan lagu favorit Anda diputar secara otomatis pada pukul 17:00 setiap Jumat sore? Ambil klip lagu favorit Anda, dan jika disimpan di katakan /home/myuser/friday_song.mp4 Anda akan menambahkan pekerjaan crontab:

0 17 * * 5 aplay /home/myuser/friday_song.mp4

Contoh: File Backup dengan Rsync

Salah satu dari banyak kegunaan crontab yang luar biasa adalah kemampuan untuk mencadangkan file Anda secara otomatis ke server jarak jauh. Secara substansial mengurangi risiko kehilangan data penting lagi dengan ini tutorial rsync yang sangat baik.

Contoh: Periksa apakah Situs Daring

Mungkin Anda ingin memeriksa secara otomatis setiap lima menit apakah berbagai situs sedang online atau tidak, dan diberi tahu melalui email jika ada yang tidak aktif. Berikut ini skrip PHP kecil yang bagus yang akan melakukan hal itu.


php
// Alamat email untuk memberitahu situs down
$ email = '[email protected]';
// Tentukan URL yang akan diperiksa
$ urls = [< br /> ' https://apexpl.io',
'https://google.com',
'https://some-junk-site-that-will-hopefully-never-exist.com'
];
// Buka URL
$ down = [];
foreach ($ urls as $ url) {
// Periksa URL
$ status = check_url ($ url);
jika ($ status! = 200) {
$ down [] = $ url;
}
}
// Kirim e-mail jika kita punya situs tidak aktif
if (count ($ down)> 0) {
mail ($ email, "Urgent - Sites Down!", "Bot Anda telah mendeteksi situs berikut ini sedang down:
". implode ("
", $ down));
}
// Keluar
exit (0);
/ **
* Periksa URL < br /> * /
function check_url (string $ url): int
{
// Kirim melalui cURL
$ ch = curl_init ();
curl_setopt ($ ch, CURLOPT_URL, $ url);
curl_setopt ($ ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt ($ ch, CURLOPT_FOLLOWLOCATION, true);
$ response = curl_exec ($ ch);
// Dapatkan status, dan tutup koneksi
$ status = curl_getinfo ($ ch, CURLINFO_HTTP_CODE);
curl_close ($ ch);
// Return
return $ status;
}

Cukup ubah alamat email dan URL yang diinginkan untuk diperiksa di bagian atas file, dan simpan itu di suatu tempat seperti /home/myuser/check_sites.php . Agar skrip ini dijalankan setiap lima menit dan memberi tahu Anda melalui email untuk situs apa pun yang tidak aktif, tambahkan tugas crontab:

  * / 5 * * * * / usr / bin / php /home/myuser/check_sites.php> / dev / null 2> & 1  

Otomatiskan Hidup Anda!

Dengan artikel ini Anda semoga memahami kekuatan otomatisasi crontab, dan bagaimana ia dapat digunakan untuk mengotomatiskan banyak tugas biasa dan berulang dalam kehidupan.

Anda telah mempelajari apa itu crontab, tentang file crontab, bagaimana pekerjaan crontab diformat, dan beberapa contoh nyata tentang cara memanfaatkannya.

4 Aplikasi Otomatisasi Linux untuk Merampingkan Tugas dan Alur Kerja Anda

Ingin menghemat waktu dan menghindari tugas yang berulang? Jawabannya adalah otomatisasi! Berikut beberapa aplikasi otomatisasi desktop Linux yang berguna untuk dicoba.

Terkait Topik
  • Pemrograman
  • Linux
Tentang Penulis
Matt Dizak (13 Artikel Dipublikasikan)
Lainnya Dari Matt Dizak

Berlangganan ke Kami Buletin

Bergabunglah dengan buletin kami untuk mendapatkan kiat teknologi, ulasan, eBook gratis, dan penawaran eksklusif!

One More Step…!

Harap konfirmasi alamat email Anda di email yang baru saja kami kirimkan kepada Anda.

.