প্রক্রিয়াটির আইডি বের করার জন্য টার্মিনাল কমান্ডটি কী


12

আমি কমান্ড লাইনটি ব্যবহার করে কোনও প্রক্রিয়া থেকে বেরিয়ে যেতে চাই, তবে প্রক্রিয়াটির আইডি সন্ধান করার জন্য আমি কমান্ডটি পুনরায় কল করতে পারি না। এটা কি কেউ জানে?

উত্তর:


13

কোনও প্রক্রিয়ার আইডি (তার নাম দেওয়া হয়েছে) সন্ধানের জন্য আদেশটি pidof। তবে যেহেতু আপনার উদ্দেশ্যটি প্রক্রিয়াটি হত্যার, তাই এর pidofপিডটি আগে খুঁজে পাওয়ার চেয়ে আরও ভাল / সহজ উপায় রয়েছে :

ধরে নিই যে আপনি যে প্রক্রিয়াটি হত্যা করতে চান তা তার নামের দ্বারা স্বতন্ত্রভাবে সনাক্ত করা হয় (বা আপনি সেই নামটি দিয়ে সমস্ত প্রক্রিয়াটি হত্যা করতে চান), আপনাকে এর পিড জানার দরকার নেই। আপনি সহজভাবে করতে পারেন killall processname

যদি একই নামের সাথে একাধিক প্রক্রিয়া থাকে তবে আপনি কেবল pidofসেগুলির মধ্যে একটিকে মেরে ফেলতে চান তবে ব্যবহার আপনাকে বেশি সাহায্য করবে না, কারণ এটি আপনাকে পিড দেবে, তবে এটি কোনটি নির্ধারণের জন্য আপনাকে কোনও তথ্য দেবে না পিডস সেই প্রক্রিয়াটির সাথে সম্পর্কিত যা আপনি আসলে হত্যা করতে চান।

এই ক্ষেত্রে আপনি ps aux | grep processnameযা করতে পারেন যা প্রদত্ত নামের সাথে সমস্ত প্রক্রিয়াগুলি পাশাপাশি তারা যে কনসোলটি চালাচ্ছে তা (যদি প্রযোজ্য হয়) এবং তাদের সাথে যে আর্গুমেন্টগুলি দিয়েছিল সেগুলি দেখায় যা আশাবাদী আপনি যে প্রক্রিয়াটি সন্ধান করছেন তা চিহ্নিত করার অনুমতি দেয় ।

যদি প্রক্রিয়াটি কোনও এক্স-উইন্ডো খোলায়, আপনি xkillহত্যার জন্যও (অনুরোধ করতে পারেন এবং xkillউইন্ডোটিতে ক্লিক করুন) ব্যবহার করতে পারেন ।


7

আপনার বেশিরভাগ লিনাক্স এবং ইউএনআইএক্স সিস্টেমে পাওয়া যায় এমন দুটি হ্যান্ডি এবং শক্তিশালী ইউটিলিটি দেখতে হবে pgrepএবং shouldpkill

$ apropos pgrep
pgrep (1) - look up or signal processes based on name and other attributes

5

আপনি ps -Aবর্তমানে চলমান সমস্ত প্রক্রিয়া (তাদের প্রসেস আইডি সহ) দেখানোর জন্য টার্মিনালে চালাতে পারেন ।


grepনির্দিষ্ট প্রক্রিয়াটির নাম অনুসন্ধান করার জন্য পাইপ :ps -A | grep 'my name'
গ্যাব্রিয়েল স্ট্যাপলস

2

আমারও একই রকম সমস্যা ছিল। আমি ব্যবহার করেছি pstree -p; এটি আমাকে প্রসেস আইডি সহ চলমান চলমান প্রক্রিয়াগুলি দেখায়।


আকর্ষণীয় আদেশ
জাম্পনেট


1

আমার প্রিয় pstree -p | grep $(program_name)। এটি প্রকৃতপক্ষে প্রক্রিয়াটিকে গ্রেপ্তার করে, এটি হাইলাইট করে এবং প্রথম বন্ধনীতে পিডটি দেখায়।

আমার পরবর্তী প্রিয় (বিশেষত যখন প্রোগ্রামিং এবং প্রক্রিয়া থেকে সমস্ত পিডের প্রয়োজন হয়) হয় pgrep -law ""। এটি আপনাকে আক্ষরিক অর্থে অ্যাপ্লিকেশন অনুসারে চলমান প্রতিটি পিড দেয় (পরম পাথ সহ)।

এটি pgrep -lw ""প্রোগ্রামের নাম অনুসারে pgrep -lপিড বা এমনকি সমস্ত পিডের জন্য হ্রাস করা যেতে পারে

অবশ্যই, আপনি কোনও নির্দিষ্ট প্রোগ্রামের (বা কোনও প্রোগ্রামের অংশ) নামের জন্য অনুসন্ধান করতে পারেন। (যেমন pgrep -lw firefসম্ভবত "4567 ফায়ারফক্স" এর মতো কিছু প্রদর্শন করবে)।


pstree -psH $(pgrep prgram_name)প্রথম ক্ষেত্রে ভাল হবে না ?
মুরু

হ্যাঁ, এটিও কাজ করে। আপনি এটির জন্য একটি উপাধি তৈরি করতে পারেন। আমি কেবল একটি প্রোগ্রামের নাম উপস্থাপন করতে $ () ব্যবহার করছিলাম; আমি মনে করি যে ডলার চিহ্নের কারণে টাইপ করা। (Pgrep নাম) কিছুটা বিরক্তিকর, তবে আমি মনে করি যে এর একটি উপন্যাস সহায়ক হতে পারে।
dylnmc

0

অনুলিপিযুক্ত প্রশ্নে @ বেনের এই উত্তরটি আমার সমস্যার সমাধান করেছে:

topটার্মিনাল কমান্ড ব্যবহার বিবেচনা করুন ।

   The  top  program  provides  a dynamic real-time view of a running
   system.  It can display system summary information as  well  as  a
   list  of processes or threads currently being managed by the Linux
   kernel.  The types of system summary  information  shown  and  the
   types,  order  and size of information displayed for processes are
   all user configurable and that configuration can be  made  persis‐
   tent across restarts.

ম্যান টপ মাধ্যমে

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.