Tunggu Perintah di Linux

Wait Command Linux



tunggu adalah arahan terbina dalam Linux yang menunggu untuk menyelesaikan sebarang proses yang sedang berjalan. tunggu arahan digunakan dengan id proses atau id pekerjaan tertentu. Apabila beberapa proses berjalan di shell maka hanya id proses perintah terakhir yang akan diketahui oleh shell semasa. Sekiranya perintah tunggu dijalankan kali ini, maka perintah tersebut akan digunakan untuk perintah terakhir. Sekiranya tiada proses proses atau id pekerjaan diberikan dengan perintah tunggu maka ia akan menunggu semua proses anak semasa selesai dan mengembalikan status keluar.

Nilai status keluar perintah tunggu bergantung pada perintah yang ditunjukkan oleh operan terakhir yang ditentukan. Apabila sebarang proses berakhir secara tidak normal maka status keluar akan lebih besar daripada 128 dan akan berbeza dengan nilai status keluar dari perintah lain. tunggu perintah keluar dengan nilai 0 ketika memanggil tanpa operan dan semua ID proses yang diketahui oleh shell semasa telah ditamatkan. Sekiranya perintah tunggu mengesan sebarang ralat maka ia akan mengembalikan nilai dari 1 hingga 126. Sekiranya proses terakhir tidak diketahui, maka tunggu perintah keluar dengan nilai 127. Bagaimana anda boleh menggunakan perintah tunggu di Linux ditunjukkan dalam tutorial ini.







Contoh-1: Menggunakan perintah tunggu untuk pelbagai proses

Setelah menjalankan skrip berikut, dua proses akan berjalan di latar belakang dan id proses perintah gema pertama disimpan dalam pemboleh ubah $ process_id. Apabila perintah tunggu dijalankan dengan $ process_id maka perintah seterusnya akan menunggu untuk menyelesaikan tugas perintah gema pertama. Perintah tunggu kedua digunakan dengan ‘ $! 'Dan ini menunjukkan id proses dari proses terakhir yang dijalankan. ' $? 'Digunakan untuk membaca nilai status perintah tunggu.



#! / bin / bash
membuang 'menguji perintah tunggu1' &
proses_id=$!
membuang 'ujian tunggu perintah2' &
tunggu $ proses_id
membuangPekerjaan1keluar dengan status$?
tunggu $!
membuangPekerjaan2keluar dengan status$?

Pengeluaran:



$bashtunggu1.sh





Contoh-2: Uji perintah tunggu setelah menggunakan perintah membunuh

Dalam skrip berikut, perintah tunggu dijalankan setelah menghentikan prosesnya. perintah tidur dijalankan sebagai proses latar belakang dan perintah membunuh dijalankan untuk menghentikan proses berjalan. Selepas itu perintah tunggu dijalankan dengan id proses proses yang ditamatkan. Keluaran akan menunjukkan id proses dari proses yang dihentikan.

#! / bin / bash
membuang 'Menguji arahan menunggu'
tidur dua puluh &
pid=$!
bunuh $ pid
tunggu $ pid
membuang $ pidditamatkan.

Pengeluaran:



$bashtunggu2.sh

Contoh-3: Periksa nilai status keluar

Dalam skrip berikut, fungsi semak () dipanggil oleh dua nilai argumen. Dibincangkan dalam permulaan tutorial bahawa jika perintah tunggu berjaya dilaksanakan nilai keluar akan 0 dan jika perintah tunggu mengesan sebarang kesalahan maka ia akan mengembalikan nilai antara 1 dan 126. Setelah menjalankan skrip, jika anda lulus 0 sebagai argumen kedua nilai maka perintah tunggu berjaya ditamatkan dan jika anda lulus nilai lebih daripada sifar maka ia tidak berjaya ditamatkan.

#! / bin / bash
fungsiperiksa()
{
membuang 'Tidur selama $ 1 saat'
tidur $ 1
jalan keluar $ 2
}
periksa$ 1 $ 2 &
b=$!
membuang 'Memeriksa status'
tunggu $ b && membuangokey|| membuangTIDAK BAIK

Pengeluaran:

$bashtunggu3.sh3 0
$bashtunggu3.sh3 5

Harap, tutorial ini dapat membantu mempelajari arahan penggunaan tunggu dengan betul. Terdapat satu lagi perintah di Linux, yang dinamakan tidur untuk menunggu jumlah masa tertentu tetapi terdapat beberapa perbezaan antara perintah ini. Sekiranya anda berminat untuk mengetahui mengenai arahan tidur maka anda boleh melayari pautan ini.