Dalam skrip saya, saya membagi set data menjadi input_aa, input_ab, dll. Kemudian, saya menjalankan masing-masing melalui skrip Python yang sama, seperti:
# Execute program on each split file
for part in input_*; do
python3 $part &
done
wait
Pertanyaan saya ada dua: bagaimana saya mendeteksi bahwa proses Python telah gagal, dan ketika terdeteksi, bagaimana saya membunuh semua anak yang dilahirkan dan keluar dari skrip dengan gagal?
bash
,dash
,yash
,mksh
,zsh
. Pada dasarnya setiap shell POSIX kecuali AT&T ksh.set -m
ditentukan (kurang-) dalam POSIX tetapi sebagai fitur opsional.kill 0
membunuh semua anggota grup proses apa pun orang tua mereka. Lihatps -j
untuk melihat id grup proses.Ini sebuah contoh. MAINKAN ini dulu untuk mendapatkan apa yang Anda butuhkan. Tidak bisa pecah seperti sekarang.
Ini sengaja diatur untuk gagal karena
ls oinkle
akan gagal (di mesin saya).Ketika Anda mendapatkan apa yang Anda butuhkan setelah bermain-main dengan skrip starter --- Ubah:
untuk:
perubahan:
untuk:
Pengalihan ada untuk menyimpan log. Anda mungkin tidak menginginkannya.
sumber
killfile
mungkin tidak mengandung semua tawaran pekerjaan yang telah dimulai.[ $? -ne 0 ]
...