যদি, মধ্যে bash
, আমি কার্যকর:
cmd1 | cmd2 | ... | cmdi | ... | cmdn &
যেখানে cmd{1..n}
পৃথক নাও হতে পারে, আমি কীভাবে এর পিআইডি পাব cmdi
? বিকল্পভাবে, আমি কীভাবে cmdi
প্রক্রিয়াটি সংকেত করতে পারি ? (উদাহরণস্বরূপ, এটি প্রেরণ করবেন SIGUSR1
?)
pkill
/ pgrep
, pidof
ইত্যাদি ভাল উত্তরের মতো বলে মনে হচ্ছে না, কারণ cmdi
একই পাইপলাইনের অংশ হিসাবে সম্ভবত চলার অন্যান্য উদাহরণগুলি । আমার জন্য jobs -p
পিআইডি দেয়cmd1
i
কিছু হতে পারে {1..n}
।
cat /var/run/out | nc -l 8080
শুধু কৃত্রিম অনুরূপ করতে cmd1 | cmd2
? আপনার সীমাবদ্ধতা, আপনি যে খালি হাড়ের পাইপলাইন টাইপ করতে চান এবং তারপরে পিআইডিগুলি পুনরুদ্ধার করতে চান তা (1) প্রশ্নের মধ্যে বর্ণিত নয় এবং (2) ভাল, সাধারণ সমাধানের অনুমতি দেওয়া সম্ভব নয় unlikely
cmd1 | cmd2
উভয় পিআইডি সহজেই গ্রহণযোগ্য এমন একটি অত্যন্ত বিশেষ কেস। আমি এন সম্পর্কে কিছু বলেছি? তাহলে আপনি কেন এন = 2 ধরে নিবেন? আমি কি সেমিডিডি কিছু বললাম? তাহলে আপনি কেন ধরে নেবেন যে আমি সেমিডিডি সংশোধন করতে পারব? আমি একটি সাধারণ সমাধান চাইছি এবং আপনি বিধিনিষেধ আরোপ করছেন।