GNU/Linux >> Belajar Linux >  >> Linux

Periksa Proses Jika Sama Sedang Berjalan?

Apakah ada skrip atau cara di linux yang ketika saya mencoba menjalankan skrip/proses shell, jika yang sama berjalan, itu akan meminta hal yang sama sedang berjalan dan akan keluar jika tidak maka akan dilanjutkan.

Jawaban yang Diterima:

Anda dapat menggunakan liner yang satu ini untuk melakukan apa yang Anda inginkan:

$ pgrep script.bash && echo "already running" || ( ./script.bash & )

Contoh

Katakanlah saya memiliki skrip ini:

$ cat script.bash 
#!/bin/bash

echo "Hello World"
sleep 10

Jika kita menggunakan satu liner:

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
Hello World
$

Kami menjalankannya lagi:

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
10197
already running
$

Menunggu 10 detik dan menjalankannya lagi, berfungsi lagi:

$ pgrep script.bash && echo "already running" || ( ./script.bash & )
Hello World
$

Linux
  1. Periksa database untuk korupsi

  2. Skrip Linux untuk memeriksa apakah proses sedang berjalan dan menindaklanjuti hasilnya

  3. Apakah file .pid dapat diandalkan untuk menentukan apakah suatu proses sedang berjalan?

  1. Ubah Lingkungan Proses yang Berjalan?

  2. Bagaimana Cara Melihat Output Dari Proses yang Berjalan Di Sesi Bash Lain?

  3. Plugin Nagios generik untuk memeriksa apakah proses/layanan tertentu sedang berjalan?

  1. Periksa Apakah Proses Menjalankan Mac Os X Kemudian Jalankan Kode?

  2. Bagaimana cara memeriksa apakah suatu proses masih berjalan menggunakan Python di Linux?

  3. Periksa batas FD terbuka untuk proses tertentu di Linux