GNU/Linux >> Belajar Linux >  >> Linux

Perintah Tunggu di Linux Dijelaskan dengan Contoh Praktis

Perintah wait adalah sesuatu yang disertakan dengan Linux sehingga Anda dapat menemukannya di semua distribusi Linux. Sebelum suatu proses berhenti, ia menunggu sampai selesai. Saat Anda menyertakan proses atau ID pekerjaan, Anda harus menggunakan perintah wait. Sederhananya, perintah wait yang berisi ID akan terus menunggu hingga proses selesai dan kembali ke status terminasi. Jadi jika Anda juga ingin menggunakan perintah wait, kami sarankan Anda membaca artikel ini dengan seksama.

Apa itu Perintah Tunggu?

Perintah wait di Linux terbukti menjadi proses yang berharga dan mudah ketika kita berbicara tentang mengelola alur kerja otomatisasi. Selain itu, ini membantu Anda mengatur alur dengan benar sehingga otomatisasi berjalan lancar. Misalnya, dengan menggunakan perintah wait, Anda perlu memastikan bahwa modul saat ini selesai dieksekusi sebelum modul berikutnya dapat mulai bekerja.

Perintah ini memonitor proses sebelumnya dengan cermat. Status akan dikirim ke perintah setelah menyelesaikan proses sebelumnya. Akibatnya, jika Anda menunggu proses dengan ID 25351 selesai, perintah wait akan mengirimkan status keluar setelah selesai. Status keluarnya akan ditemukan di pesan kembalinya. Berikut adalah sintaks umum dari perintah wait: 

wait [options] ID

ID(PID) -> ID proses (tunggu PID) akan menunggu hingga utilitas dihentikan jika Anda memilih opsi ini. Anda dapat menemukan PID suatu proses melalui perintah berikut: 

pidof <process name>

Misalnya, kita ingin mencari PID Firefox, dan kemudian kita akan menjalankan perintah di bawah ini di terminal:

Contoh Praktis Perintah Wait di Linux

- -

Di bawah ini adalah beberapa contoh perintah wait yang akan membantu Anda lebih memahaminya. Kami telah menggunakan skenario yang berbeda dan membuat skrip yang sesuai, jadi mari kita lihat skenarionya:

1. Perintah Tunggu dengan Beberapa Proses

Di sini, dalam contoh ini, kita akan menentukan fungsi dari perintah wait dengan banyak proses. Kami akan menyusun skrip di mana kami dapat melanjutkan dengan menjalankan dua perintah dan kemudian menunggu mereka untuk dieksekusi. Kami telah membuat skrip bash “ubuntupit.sh” dengan informasi berikut: 

#! /bin /bash

echo "wait vlc" &

process_id=$!

echo "wait firefox" &

wait $process_id

echo process 1 ended as $?

echo process 2 ended as $?

Setelah membuat skrip di atas, kami telah menjalankan perintah di bawah ini di terminal:

bash ubuntupit.sh

Kita juga dapat menggunakan perintah wait di skrip shell, yang digunakan untuk memunculkan proses anak. Jadi, inilah skrip sederhananya: 

#! /bin /bash

vlc &

process_id=$!

echo "PID: $process_id"

wait $process_id

echo "Exit Details: $?"

Pada perintah di atas:

  • Baris pertama terdiri dari shebang, dan baris kedua memiliki vlc &untuk menggunakan perintah wait ke dalamnya. 
  • $! berfungsi sebagai variabel bash internal untuk menyimpan PID dari proses terakhir, yang berjalan di latar belakang.
  • PID diteruskan ke perintah wait yang diberikan di baris berikutnya, yang akan menunggu hingga vlc player ditutup.
  • Pada akhirnya, sistem akan mencetak detail keluar dari perintah wait. 

Sekarang, jalankan skrip ini di terminal:

Kita juga dapat menggunakan opsi -n dalam skrip untuk mendapatkan hasil yang berbeda. Berikut adalah skrip “Ubuntupit2.sh” yang terdiri dari opsi -n:

#! /bin /bash

vlc

firefox

wait -n

echo "First process ended"

wait

echo "All processes ended"

Opsi -n dalam skrip di atas menunda pencetakan pernyataan gema hingga proses pertama selesai. Perintah wait menunggu hingga semua proses latar belakang selesai.

2. Matikan Proses Menggunakan Perintah Tunggu

Untuk contoh kedua tentang perintah wait, kita akan menjalankan skrip bernama ubuntupit3.sh untuk menghentikan suatu proses, dan kemudian kita akan menjalankan perintah wait.

#! /bin/bash
echo "Kill a Process"
vlc &
process_id=$!
kill $process_id
wait $process_id
echo $process_id is ended successfully.

Anda akan menerima output setelah menjalankan skrip:

Di sini Anda dapat melihat bahwa status keluar menunjukkan apakah proses telah dihentikan. Contoh ini menunjukkan bagaimana status keluar kembali secara berbeda berdasarkan hasil proses.

3. Memeriksa Nilai Status Keluar

Dalam contoh ini, Anda dapat melihat bahwa fungsi check() memerlukan dua argumen; beri nama skrip kami sebagai ubuntupit4.sh. Dalam skrip ini, kami menggunakan perintah sleep untuk mendemonstrasikan contohnya. Kami mendefinisikan fungsi berikut di sini:

#! /bin/bash

function check()

{

echo "Execute sleep for $1 seconds"

sleep $1

exit $2

}

check $1 $2 &

b=$!

echo "System is checking the status of the process"

wait $b && echo Ended Successfully || echo Not Ended Successfully

Dalam fungsi ini, pertama-tama kita mencerminkan panjang proses pertama. Kami kemudian menggunakan informasi tertentu untuk tidur dan keluar dari proses. Kami memperhitungkan input berikut:

check $1 $2 &

b=$!

echo "System is checking the status of the process"

wait $b && echo Ended Successfully || echo Not Ended Successfully

Setelah pengguna memasukkan nilai, perintah wait digunakan untuk menampilkan status. Di sini kita telah menggunakan 6,5 dan 6,0 sebagai contoh:

Akhirnya, Wawasan

Artikel di atas berisi semua informasi tentang perintah wait, penggunaannya di Linux, dan contoh kerjanya. Anda telah melihat bagaimana Anda dapat memanfaatkannya dengan baik dalam alur kerja otomatisasi. Semua yang disebutkan dalam artikel terbaca secara memadai, mulai dari perintah yang digunakan hingga detail tambahannya, dan tidak melewatkan satu poin pun.


Linux
  1. Perintah shutdown Linux Dijelaskan dengan Contoh

  2. Perintah Traceroute Linux, Dijelaskan dengan Contoh

  3. Perintah JQ di Linux dengan Contoh

  1. Perintah wc Linux dengan Contoh

  2. Perintah potong Linux Dijelaskan dengan 6 Contoh

  3. Perintah ip Linux dengan Contoh

  1. Perintah Linux ldd Dijelaskan dengan Contoh

  2. 15 Perintah Linux ps dengan Contoh

  3. Linux membuat Perintah Dijelaskan Dengan Contoh