GNU/Linux >> Belajar Linux >  >> Linux

Cara Menambahkan Perintah Linux Ke Antrian Dan Menjalankannya Satu Per Satu

Hari ini, saya menemukan utilitas baris perintah Linux yang keren bernama "Task Spooler" . Seperti namanya, Task spooler adalah sistem batch Unix yang dapat digunakan untuk menambahkan perintah Linux ke antrian dan menjalankannya satu demi satu dalam urutan numerik (urutan menaik, tepatnya). Tolong jangan bingung dengan 'at' perintah, yang digunakan untuk menjalankan perintah Linux pada waktu tertentu. Tidak seperti di perintah, Task spooler menjalankan perintah segera dari antrian segera setelah perintah sebelumnya selesai.

Utilitas ini bisa sangat berguna ketika Anda harus menjalankan banyak perintah, tetapi Anda tidak ingin membuang waktu menunggu satu perintah selesai dan menjalankan perintah berikutnya. Anda dapat mengantri semuanya dan Task Spooler akan menjalankannya satu per satu. Sementara itu, Anda bisa melakukan aktivitas lain. Setiap pengguna di setiap sistem memiliki antrian pekerjaannya sendiri. Ini juga sangat berguna ketika Anda tahu bahwa perintah Anda bergantung pada banyak RAM, banyak penggunaan disk, memberikan banyak output, atau untuk alasan apa pun lebih baik tidak menjalankannya pada saat yang bersamaan. Singkatnya, Task Spooler adalah program baris perintah untuk mengantri perintah lain untuk eksekusi batch.

Unduh - EBook Gratis:"Lembar Cheat Baris Perintah Linux"

Dalam tutorial singkat ini, izinkan saya menunjukkan cara menginstal dan menggunakan Task Spooler di sistem operasi mirip Unix.

Instal Task Spooler Di Debian, Ubuntu, Linux Mint

Task Spooler tersedia di repositori default Debian, Ubuntu dan sistem berbasis DEB lainnya. Jadi, Anda dapat menginstalnya menggunakan perintah:

$ sudo apt-get install task-spooler

Untuk sistem lain, Anda dapat mengunduh file sumber Task Spooler dari tautan ini dan membangunnya sebagai paket asli untuk distribusi Linux yang Anda gunakan dan menginstalnya seperti yang dijelaskan dalam salah satu metode berikut.

  • Cara Membuat Paket Linux Untuk Berbagai Platform dengan Mudah
  • Cara Membuat Paket Dari Sumber Menggunakan CheckInstall

Tambahkan Perintah Linux Ke Antrian Dan Jalankan Satu Per Satu Menggunakan Task Spooler

Mari kita lihat beberapa contoh praktis. Semua contoh yang disediakan di sini diuji di sistem Ubuntu 18.04 LTS.

Catatan: Di sistem Debian/Ubuntu, Task Spooler harus dijalankan dengan perintah 'tsp', karena ada program lain dengan nama yang sama yang disebut ts (Alat Time Stamping Authority (klien/server)). Untuk distribusi Linux selain Ubuntu/Debian, Anda dapat menjalankannya menggunakan perintah 'ts'.

Jalankan perintah tsp:

$ tsp

Saat ini, tidak ada apa pun dalam antrian. Mari kita tambahkan beberapa perintah ke antrian. Untuk melakukannya, jalankan:

$ tsp echo Welcome OSTechNix
$ tsp echo "Hello World"

Sekarang, jalankan perintah tsp lagi untuk melihat perintah dalam antrian:

$ tsp

Contoh keluaran:

ID State Output E-Level Times(r/u/s) Command [run=0/1]
0 finished /tmp/ts-out.jpHIG1 0 0.01/0.00/0.00 echo Welcome OSTechNix
1 finished /tmp/ts-out.8H6LLB 0 0.00/0.00/0.00 echo Hello World

Seperti yang Anda lihat pada output di atas, setiap perintah memiliki ID unik di (0, 1, 2... dll.) dalam urutan menaik. Juga, ini menunjukkan status perintah saat ini (Misalnya selesai atau berjalan) dalam antrian. Perintah echo sangat sederhana dan singkat, jadi kami mendapatkan hasilnya sebagai 'selesai'.

Mari kita jalankan beberapa perintah yang membutuhkan lebih banyak waktu untuk menyelesaikannya. Perhatikan perintah berikut:

$ find / -type f -printf '%T+ %p\n' | sort | head -n 20

Perintah ini akan menemukan dan menampilkan 20 file tertua teratas di sistem file root (/).

Sekarang tambahkan perintah di atas ke antrian:

$ tsp find / -type f -printf '%T+ %p\n' | sort | head -n 20

Contoh keluaran:

2

Sekarang, jalankan perintah tsp untuk melihat daftar perintah dalam antrian.

$ tsp

Contoh keluaran:

ID State Output E-Level Times(r/u/s) Command [run=1/1]
2 running /tmp/ts-out.79rMXn find / -type f -printf %T+ %p\n
0 finished /tmp/ts-out.jpHIG1 0 0.01/0.00/0.00 echo Welcome OSTechNix
1 finished /tmp/ts-out.8H6LLB 0 0.00/0.00/0.00 echo Hello World

Tambahkan Perintah Linux Ke Antrian Menggunakan Task Spooler

Seperti yang Anda lihat pada output di atas, perintah dengan ID 2 sedang berjalan. Demikian pula, Anda dapat menambahkan sebanyak mungkin perintah yang ingin Anda jalankan menggunakan Task Spooler.

Pembaruan:

Seperti yang disebutkan oleh salah satu pembaca kami di bagian komentar, perintah find harus dijalankan seperti di bawah ini:

$ tsp sh -c "find Downloads/ -type f -printf '%T+ %p\n' | sort | head -n 20"

Untuk melihat output dari pekerjaan yang sedang berjalan untuk memeriksa apa yang terjadi, masukkan perintah berikut:

$ tsp -c 2

Di sini, 2 adalah ID dari menjalankan perintah. Tekan CTRL+C untuk kembali ke Terminal. Itu tidak akan membatalkan perintah yang sedang berjalan. Ini hanya akan membawa Anda kembali ke Terminal. Pekerjaan akan tetap berjalan di latar belakang.

Anda dapat menghapus perintah (berjalan, selesai, diantrekan) dari antrian menggunakan -r tandai diikuti dengan ID seperti di bawah ini.

$ tsp -r 2

Perintah di atas akan menghapus perintah yang memiliki ID 2 dari antrian.

Untuk menghapus semua perintah dari antrian, jalankan saja:

$ tsp -C

Harap perhatikan bahwa di sini C adalah modal . Perintah di atas akan menghapus perintah terakhir yang diselesaikan dari antrian. Itu tidak akan menghapus perintah yang sedang berjalan atau perintah dalam antrian.

Ingat, Anda perlu menjalankan Task Spooler di distribusi selain Debian/Ubuntu menggunakan ts perintah.

Untuk detail lebih lanjut, lihat halaman manual.

$ man ts

Atau,

$ man tsp

Bacaan yang disarankan:

  • Cara Menjalankan Perintah Untuk Waktu Tertentu Di Linux

Kesimpulan

Saya merasa Task spooler sangat berguna ketika saya harus menjalankan banyak perintah. Saya hanya orang yang malas untuk menunggu satu perintah selesai dan menjalankan yang lain. Menggunakan Task spooler, saya mengantri daftar perintah yang akan dieksekusi dan menjalankan perintah dari antrian satu per satu dalam urutan menaik. Saya juga dapat melihat output dari setiap perintah yang berjalan menggunakan ID-nya kapan saja. Harap diingat bahwa Itu tidak akan menjalankan semua perintah sekaligus. Sebaliknya, itu akan menjalankan perintah satu demi satu. Karena itu, Task Spooler dipilih untuk menjalankan tugas batch.


Linux
  1. Cara menggunakan perintah grep Linux

  2. Cara menggunakan perintah history di Linux

  3. Cara Membuat Alias ​​​​dan Menggunakan Perintah Alias ​​​​di Linux

  1. Cara Menyimpan Perintah Linux Dan Menggunakannya Sesuai Permintaan

  2. Bagaimana Cara Mengompres dan Mengekstrak File Menggunakan Perintah tar di Linux?

  3. 5 Cara Mengeksekusi Perintah UNIX / Linux (dan Skrip Shell) di Latar Belakang

  1. Perintah Linux:pekerjaan, bg, dan fg

  2. Bagaimana cara menambahkan bilah kemajuan untuk menyalin dan memindahkan perintah di Linux?

  3. Bagaimana Memetakan Satu Perintah Vim Untuk Menjalankan Perintah Bash Berdasarkan Os?