আপনার প্রশ্নটি নিজেই জবাব দেয়, এটি ঘটে কারণ এই প্রক্রিয়াগুলি টার্মিনাল এমুলেটারের অধীনে শিশু হিসাবে চলছে। সুতরাং আপনি টার্মিনাল এমুলেটরটিকে হত্যা করেন এবং এটি করার মাধ্যমে সমস্ত বাচ্চাদের প্রক্রিয়া বন্ধ করে দিন (যেহেতু বাচ্চারা নিয়ন্ত্রণকারী টার্মিনাল এমুলেটর হিসাবে একই প্রক্রিয়া গোষ্ঠীর অধীনে চলছে)।
উদাহরণস্বরূপ, নিম্নলিখিতটি দেখুন:
csb@darwin[~]$ ps fauwx | grep -A6 "xfce4-terminal" | awk '{ for (i = 2; i <= 9; i++) $i="" ; print $0 }'
csb 0:32 xfce4-terminal --geometry=271x65 --display :0.0 --role=Terminal-0x1340050-2606-1351620352 --show-menubar --show-borders --hide-toolbars --working-directory /home/csb --tab --working-directory /home/csb
csb 0:00 \_ gnome-pty-helper
csb 0:00 \_ bash
csb 0:00 |
\_ ssh [redacted]
csb 0:00 \_ bash
csb 0:00 \_ ps fauwx
csb 0:00 \_ grep --color=auto -A6 xfce4-terminal
csb 0:00 \_ awk { for (i = 2; i <= 9; i++) $i="" ; print $0 }
এই সমস্ত প্রক্রিয়া 'xfce4- টার্মিনাল' প্রসেসের অধীনে চলছে, সুতরাং আমি যদি এই প্রক্রিয়াটি হত্যা করি তবে এটি স্বয়ংক্রিয়ভাবে প্রক্রিয়া গোষ্ঠীর সমস্ত শিশু প্রসেসকে হত্যা করবে ... উদাহরণস্বরূপ, টার্মিনাল এমুলেটর উইন্ডোটি থেকে বেরিয়ে আসা অগত্যা আমার এসএসএইচ সংযোগটি মেরে ফেলুন।
গোলাগুলির মতো প্রোগ্রামগুলি নতুন প্রক্রিয়া গ্রুপ তৈরি করে, সাধারণত সম্পর্কিত শিশু প্রক্রিয়াগুলিকে একটি গোষ্ঠীতে রাখে। প্রতিটি কাজ একটি প্রক্রিয়া গ্রুপ। কার্নেলের বাইরে, একটি শেল কিলপিজ সিস্টেম কল দিয়ে কাজের প্রসেস গ্রুপে সিগন্যাল প্রেরণ করে একটি কাজকে পরিচালনা করে, যা একটি প্রক্রিয়া গোষ্ঠীর সমস্ত প্রক্রিয়াতে সংকেত সরবরাহ করে del