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
$
Apakah Ini Praktik Buruk Untuk Mengatur Shell Root ke Sesuatu Selain Default?
Cara Menyinkronkan Hanya Satu Partisi?