GNU/Linux >> Belajar Linux >  >> Linux

Di Perintah di Linux

at adalah utilitas baris perintah yang memungkinkan Anda menjadwalkan perintah yang akan dieksekusi pada waktu tertentu. Pekerjaan dibuat dengan at dieksekusi hanya sekali.

Pada artikel ini, kami akan menjelaskan cara menggunakan at dan utilitas pendampingnya batch , atq , atrm untuk melihat, menghapus, dan membuat tugas yang akan dijalankan di lain waktu.

Memasang at #

Tergantung pada distribusinya, at mungkin ada atau tidak ada di sistem Linux Anda.

Jika at tidak diinstal, Anda dapat menginstalnya dengan mudah menggunakan manajer paket distribusi Anda.

  • Pasang at di Ubuntu dan Debian

    sudo apt update sudo apt install at
  • Pasang at di CentOS dan Fedora

    sudo yum install at

Setelah program terinstal pastikan atd , daemon penjadwalan sedang berjalan dan diatur untuk memulai saat boot:

sudo systemctl enable --now atd

Cara Menggunakan at Perintah #

Sintaks yang disederhanakan untuk at perintahnya adalah sebagai berikut:

at [OPTION...] runtime

at perintah mengambil tanggal dan waktu (runtime ) saat Anda ingin menjalankan tugas sebagai parameter baris perintah, dan perintah yang akan dijalankan dari input standar.

Mari kita buat pekerjaan yang akan dieksekusi pada pukul 9:00:

at 09:00

Setelah Anda menekan Enter , Anda akan disajikan dengan at command prompt yang paling sering dimulai dengan at> . Anda juga melihat peringatan yang memberi tahu Anda shell tempat perintah akan dijalankan:

warning: commands will be executed using /bin/sh
at>

Masukkan satu atau lebih perintah yang ingin Anda jalankan:

tar -xf /home/linuxize/file.tar.gz

Setelah selesai memasukkan perintah, tekan Ctrl-D untuk keluar dari prompt dan menyimpan pekerjaan:

at> <EOT>
job 4 at Tue May  5 09:00:00 2020

Perintah akan menampilkan nomor pekerjaan serta waktu dan tanggal pelaksanaan.

Ada juga cara lain untuk melewati perintah yang ingin Anda jalankan, selain memasukkan perintah di at mengingatkan. Salah satu caranya adalah dengan menggunakan echo dan kirimkan perintah ke at :

echo "command_to_be_run" | at 09:00

Pilihan lainnya adalah menggunakan dokumen Here:

at 09:00 <<ENDcommand_to_be_runEND

Untuk membaca perintah dari file alih-alih input standar, jalankan perintah dengan -f opsi berikut dengan path ke file. Misalnya, untuk membuat pekerjaan yang akan menjalankan skrip /home/linuxize/script.sh :

at 09:00 -f /home/linuxize/script.sh

Secara default jika perintah menghasilkan output, at akan mengirim email termasuk output ke pengguna setelah pekerjaan selesai. Panggil at dengan -M opsi untuk menekan notifikasi email:

at 09:00 -M

Gunakan -m untuk mengirim email meskipun tidak ada keluaran:

at 09:00 -m

batch Perintah #

batch atau aliasnya at -b menjadwalkan pekerjaan dan menjalankannya dalam antrian batch ketika tingkat beban sistem mengizinkan. Secara default, pekerjaan dijalankan ketika rata-rata beban sistem di bawah 1,5. Nilai beban dapat ditentukan saat menjalankan atd daemon. Jika rata-rata beban sistem lebih tinggi dari yang ditentukan, pekerjaan akan menunggu dalam antrian.

Untuk membuat pekerjaan dengan batch , berikan perintah yang ingin Anda jalankan:

echo "command_to_be_run" | batch

Menentukan Waktu Eksekusi #

at utilitas menerima berbagai spesifikasi waktu. Anda dapat menentukan waktu, tanggal, dan kenaikan dari waktu saat ini:

  • Waktu - Untuk menentukan waktu, gunakan HH:MM atau HHMM membentuk. Untuk menunjukkan format waktu 12 jam, gunakan am atau pm setelah waktu. Anda juga dapat menggunakan string seperti now , midnight , noon , atau teatime (16:00). Jika waktu yang ditentukan terlewati, pekerjaan akan dieksekusi pada hari berikutnya.

  • Tanggal - Perintah ini memungkinkan Anda untuk menjadwalkan pelaksanaan pekerjaan pada tanggal tertentu. Tanggal dapat ditentukan menggunakan nama bulan diikuti dengan hari dan tahun opsional. Anda dapat menggunakan string, seperti today , tomorrow , atau hari kerja. Tanggal juga dapat ditunjukkan menggunakan MMDD[CC]YY , MM/DD/[CC]YY , DD.MM.[CC]YY atau [CC]YY-MM-DD format.

  • Peningkatan - at juga menerima penambahan dalam now + count time-unit format, di mana count adalah angka dan time-unit dapat berupa salah satu dari string berikut:minutes , hours , days , atau weeks .

Waktu, tanggal, dan kenaikan dapat digabungkan, berikut beberapa contohnya:

  • Jadwalkan pekerjaan untuk hari Minggu mendatang pada waktu sepuluh menit lebih lambat dari waktu saat ini:

    at sunday +10 minutes
  • Jadwalkan pekerjaan untuk dijalankan pada jam 1 siang dua hari dari sekarang:

    at 1pm + 2 days
  • Jadwalkan pekerjaan untuk dijalankan pada 12:30 21 Okt 2020:

    at 12:30 102120
  • Jadwalkan pekerjaan untuk dijalankan satu jam dari sekarang:

    at now +1 hours

Anda juga dapat menentukan waktu dan tanggal di [[CC]YY]MMDDhhmm[.ss] menggunakan -t pilihan. Ini contohnya:

at -t 202005111321.32

Menentukan Antrian #

Secara default, pekerjaan dibuat dengan at dijadwalkan dalam antrian bernama a dan pekerjaan dibuat dengan batch dijadwalkan dalam b antrian.

Kueri dapat memiliki nama dari a ke z dan A ke Z . Antrean dengan huruf yang lebih rendah dijalankan dengan tingkat kehalusan yang lebih rendah, yang berarti antrian tersebut memiliki prioritas di atas yang memiliki huruf yang lebih tinggi.

Anda dapat menentukan antrian dengan -q pilihan. Misalnya, untuk mengatur pekerjaan di L antrian, Anda akan menjalankan:

at monday +2 hours -q L

Mencantumkan Pekerjaan Tertunda #

Untuk membuat daftar pekerjaan pengguna yang tertunda, jalankan atq atau at -l perintah:

atq

Output akan mencantumkan semua pekerjaan, satu per baris. Setiap baris berisi nomor pekerjaan, tanggal, waktu, surat antrian, dan nama pengguna.

9	  Tue May  5 12:22:00 2020 a linuxize
12	Wed Oct 21 12:30:00 2020 a linuxize
15	Tue May  5 09:00:00 2020 a linuxize
6	  Tue May  5 09:00:00 2020 a linuxize
13	Mon May  4 23:08:00 2020 a linuxize
11	Wed Jul  1 10:00:00 2020 a linuxize
4	  Tue May  5 09:00:00 2020 a linuxize

Ketika atq dipanggil sebagai pengguna administratif, itu akan mencantumkan pekerjaan yang tertunda dari semua pengguna.

Menghapus Pekerjaan Tertunda #

Untuk menghapus pekerjaan yang tertunda, panggil atrm atau at -r perintah diikuti dengan nomor pekerjaan. Misalnya, untuk menghapus pekerjaan dengan nomor sembilan, Anda akan menjalankan:

atrm 9

Membatasi Pengguna #

/etc/at.deny dan /etc/at.allow file memungkinkan Anda mengontrol pengguna mana yang dapat membuat pekerjaan dengan at atau batch memerintah. File terdiri dari daftar nama pengguna, satu nama pengguna per baris.

Secara default, hanya /etc/at.deny file ada dan kosong, yang berarti semua pengguna dapat menggunakan at memerintah. Jika Anda ingin menolak izin untuk pengguna tertentu, tambahkan nama pengguna ke file ini.

Jika /etc/at.allow file yang ada hanya pengguna yang terdaftar dalam file ini yang dapat menggunakan at perintah.

Jika tidak ada file yang ada, hanya pengguna dengan hak administratif yang dapat menggunakan at perintah.

Kesimpulan #

at utilitas membaca perintah dari input standar dan mengeksekusinya di lain waktu. Tidak seperti crontab, pekerjaan dibuat dengan at dieksekusi hanya sekali.

Untuk informasi lebih lanjut tentang semua opsi yang tersedia dari at ketik perintah man at di terminal Anda.

Jika Anda memiliki pertanyaan, silakan tinggalkan komentar.


Linux
  1. Perintah mv Linux

  2. Linux du perintah

  3. Perintah ip Linux

  1. Perintah ifconfig Linux

  2. Perintah Waktu Linux

  3. Perintah cd Linux

  1. Perintah Ping di Linux

  2. Perintah Tonton Linux

  3. Perintah Xargs di Linux