GNU/Linux >> Belajar Linux >  >> Linux

Jadwalkan tugas dengan Linux pada perintah

Komputer bagus dalam otomatisasi, tetapi tidak semua orang tahu cara membuat otomatisasi bekerja. Namun, merupakan kemewahan yang nyata untuk dapat menjadwalkan tugas untuk komputer pada waktu tertentu dan kemudian melupakannya. Mungkin Anda memiliki file untuk diunggah atau diunduh pada waktu tertentu, atau Anda perlu memproses sekumpulan file yang belum ada tetapi dijamin ada pada waktu tertentu atau pengaturan yang perlu dipantau, atau mungkin Anda hanya perlu pengingat ramah untuk mengambil roti dan mentega dalam perjalanan pulang kerja.

Itulah yang at perintah untuk.

Apa yang dimaksud dengan Linux di perintah?

at command adalah metode terminal Linux yang memungkinkan Anda menjadwalkan pekerjaan satu kali untuk waktu dan tanggal tertentu. Otomatisasi spontan menjadi mudah dari terminal.

Memasang di

Di Linux, at perintah mungkin sudah diinstal. Anda dapat memverifikasi bahwa itu diinstal menggunakan at -V memerintah. Selama versi dikembalikan, Anda memiliki at terpasang:

$ at -V
at version x.y.z

Jika Anda mencoba menggunakan at dan perintah tidak ditemukan, sebagian besar distribusi Linux modern menawarkan untuk menginstal at yang hilang paket untuk Anda.

Anda mungkin juga perlu memulai di daemon, yang disebut atd . Pada sebagian besar sistem Linux, Anda menggunakan perintah systemctl untuk mengaktifkan layanan dan mengaturnya agar mulai secara otomatis mulai sekarang:

$ sudo systemctl enable --now atd

Menjadwalkan pekerjaan secara interaktif dengan di

Saat Anda menggunakan at perintah bersama dengan waktu yang Anda inginkan untuk menjalankan tugas, Anda membuka at interactive interaktif mengingatkan. Anda dapat memasukkan perintah yang ingin Anda jalankan pada waktu yang Anda tentukan.

Jika membantu, Anda dapat menganggap proses ini sebagai aplikasi kalender, seperti yang mungkin Anda gunakan di ponsel—pertama, Anda membuat acara pada suatu hari pada suatu waktu, lalu Anda menentukan apa yang Anda inginkan untuk terjadi.

Misalnya, cobalah menjadwalkan memo untuk Anda sendiri dengan membuat tugas selama beberapa menit di masa mendatang. Buat tugas sederhana untuk mengurangi kemungkinan kegagalan. Untuk keluar dari at perintah, tekan Ctrl+D di keyboard Anda.

$ at 11:20 AM
warning: commands will be executed using /bin/sh
at> echo "hello world" > ~/at-test.txt
at> <EOT>
job 3 at Mon Jul 26 11:20:00 2021

Seperti yang Anda lihat, at menggunakan definisi waktu yang intuitif dan alami. Anda tidak perlu mengetahui jam 24 jam atau menerjemahkan waktu ke UTC atau format ISO tertentu. Umumnya, Anda dapat menggunakan notasi apa pun yang muncul secara alami, seperti siang13:3013:37 , dan seterusnya, untuk menjelaskan kapan Anda ingin suatu tugas terjadi.

Tunggu beberapa menit lalu verifikasi bahwa tugas Anda telah berjalan dengan menjalankan cat atau tac perintah pada file yang Anda buat:

$ cat ~/at-test.txt
hello world

Menjadwalkan pekerjaan dengan di

Anda tidak perlu menggunakan perintah interaktif untuk menjadwalkan pekerjaan dengan at . Anda dapat menyalurkan perintah ke sana menggunakan echo atau printf . Dalam contoh ini, saya menggunakan notasi sekarang dan berapa menit dari sekarang saya ingin tugas ditunda:

$ echo "echo 'hello again' >> ~/at-test.txt" | at now +1 minute

Setelah satu menit, verifikasi bahwa perintah baru telah dijalankan:

$ cat ~/at-test.txt
hello world
hello again

Lebih banyak sumber daya Linux

  • Lembar contekan perintah Linux
  • Lembar contekan perintah Linux tingkat lanjut
  • Kursus online gratis:Ikhtisar Teknis RHEL
  • Lembar contekan jaringan Linux
  • Lembar contekan SELinux
  • Lembar contekan perintah umum Linux
  • Apa itu container Linux?
  • Artikel Linux terbaru kami

Ekspresi waktu

at perintah cukup memaafkan ketika menafsirkan waktu. Anda dapat memilih di antara banyak format, tergantung mana yang paling nyaman bagi Anda:

  • YYMMDDhhmm [.ss]

    (disingkat tahun, bulan, hari, jam, menit, dan opsional detik)
  • CCYYMMDDhhmm [.ss]

    (tahun penuh, bulan, hari, jam, menit, dan opsional detik)
  • now
  • midnight
  • noon
  • teatime (4 sore)
  • AM
  • PM

Waktu dan tanggal bisa mutlak atau tambahkan tanda tambah (+ ) untuk membuatnya relatif terhadap sekarang . Saat menentukan waktu relatif, Anda dapat menggunakan kata-kata yang mungkin sudah Anda gunakan:

  • minutes
  • hours
  • days
  • weeks
  • months
  • years

Sintaks waktu dan tanggal

at perintah kurang memaafkan dalam memberi tahu waktu dari tanggal. Waktu harus didahulukan, diikuti oleh hari, meskipun default hari adalah hari ini dan hanya diperlukan saat menjadwalkan tugas untuk suatu hari nanti di masa mendatang.

Ini adalah contoh dari beberapa ekspresi yang valid:

$ echo "rsync -av /home/tux me@myserver:/home/tux/" | at 3:30 AM tomorrow
$ echo "/opt/batch.sh ~/Pictures" | at 3:30 AM 08/01/2022
$ echo "echo hello" | at now + 3 days

Melihat Anda di antrean

Setelah Anda menerima at dan sedang menjadwalkan tugas alih-alih mencoret-coret catatan untuk diri sendiri di secarik kertas tergeletak di sekitar meja Anda, Anda mungkin ingin meninjau apakah Anda masih memiliki pekerjaan dalam antrean.

Untuk melihat at antrian, gunakan atq perintah:

$ atq
10 Thu Jul 29 12:19:00 2021 a tux
9  Tue Jul 27 03:30:00 2021 a tux
7  Tue Jul 27 00:00:00 2021 a tux

Untuk menghapus tugas dari antrian Anda, gunakan atrm perintah bersama dengan nomor pekerjaan. Untuk menghapus tugas 7, misalnya:

$ atrm 7
$ atq
10 Thu Jul 29 12:19:00 2021 a tux
9  Tue Jul 27 03:30:00 2021 a tux

Untuk melihat apa yang sebenarnya ada dalam pekerjaan terjadwal, Anda harus melihat at kumparan. Hanya pengguna root yang dapat melihat at spool, jadi Anda harus menggunakan sudo untuk melihat gulungan atau ke cat konten pekerjaan apa pun.

Jadwalkan dengan Linux di

at sistem adalah cara terbaik untuk menghindari lupa menjalankan pekerjaan di kemudian hari atau membuat komputer Anda menjalankan pekerjaan untuk Anda saat Anda pergi. Tidak seperti cron , itu bebas dari harapan bahwa pekerjaan harus berjalan pada jadwal reguler mulai sekarang hingga selamanya, dan akibatnya sintaksnya jauh lebih sederhana daripada cron sintaks.

Lain kali Anda memiliki pekerjaan kecil yang Anda ingin komputer Anda ingat dan kelola, coba at perintah.


Linux
  1. Menjadwalkan tugas dengan perintah cron Linux

  2. Diagnosis masalah konektivitas dengan perintah ping Linux

  3. Tonton perintah dan tugas dengan perintah jam tangan Linux

  1. Kuasai perintah Linux ls

  2. Perintah JQ di Linux dengan Contoh

  3. Perintah cari di Linux

  1. Cara Menggunakan Perintah 'at' untuk Menjadwalkan Tugas pada Waktu yang Diberikan atau Nanti di Linux

  2. Temukan Waktu Eksekusi Perintah Atau Proses Di Linux

  3. Cara Menjadwalkan Tugas Menggunakan di di Linux