আমি কীভাবে কোনও অ্যাপ্লিকেশনটির প্রক্রিয়া নাম নির্ধারণ করব?


13

এই অবস্থা:

ইউনিটি কুইক লিস্ট এডিটরের (পরবর্তী সংস্করণ) কাজ করে আমি লঞ্চ আইকনগুলি পুনরায় চালু করার একটি নির্ভরযোগ্য উপায় যুক্ত করতে চাই। এটি করার জন্য, আমাকে আইকনটি সরিয়ে ফেলতে হবে (গেটেটিংগুলি সম্পাদনা করতে হবে) এবং একই অবস্থানে এটিকে প্রতিস্থাপন করতে হবে। এখনও পর্যন্ত কোনও সমস্যা নেই। তবে, যদি প্রশ্নে থাকা অ্যাপ্লিকেশনটি চলমান থাকে, ব্যবহারকারী সম্ভবত ডেটা হারাবেন, কারণ লঞ্চটি থেকে আইকনটি অপসারণ করা হলে অ্যাপ্লিকেশনটি প্রস্থান করবে। আমার যা দরকার তা হ'ল একটি অ্যাপ্লিকেশনটির প্রক্রিয়া নাম সন্ধান করার একটি নির্ভরযোগ্য উপায়, অ্যাপ্লিকেশনটি চলমান থাকলে চলমান প্রক্রিয়াগুলির তালিকাতে সম্পাদককে পরীক্ষা করতে দেওয়া এবং ব্যবহারকারীকে একটি সতর্কতা বার্তা প্রেরণ করুন যে অ্যাপ্লিকেশনটি চালু থাকলে আইকনটি পুনরায় আরম্ভ করা যাবে না application চলছে।

আমি এ পর্যন্ত যা করেছি তা হ'ল সম্পাদকটি ডেস্কটপ ফাইলে সন্ধান করা, কমান্ডটি পড়ার জন্য, কমান্ডটি পড়ার জন্য, ডিরেক্টরি বিভাগ থেকে পৃথক করে রাখা এবং ডেস্কটপ ফাইলের কমান্ডের দ্বারা চিহ্নিত সম্ভাব্য দূরবর্তী স্ক্রিপ্টগুলি অনুসন্ধান করা, স্ট্রিংগুলি শুরু করার জন্য অনুসন্ধান করা সঙ্গে "./"

যদিও পদ্ধতিটি এটি প্রয়োগ করে সমস্ত অ্যাপ্লিকেশনগুলির সাথে ভালভাবে কাজ করছে বলে মনে হচ্ছে, আমার মনে হয়েছে যে "সমস্ত একসাথে" সমস্যা কভার করার সহজ উপায় থাকতে হবে ...

আছে?

আরও ব্যতিক্রমী পরিস্থিতি ধরার পরামর্শগুলি স্বাগত!


অ্যাপ্লিকেশনটি যখন তার আইকনটি লঞ্চার থেকে সরানো হবে তখন কেন এটি বন্ধ হবে? ছেড়ে দিলে কোনো অ্যাপ্লিকেশনের যে লঞ্চার এর আইকন অপসারণ করা হবে ঘটায় পিন করা হয়েছে করা হয় না, কিন্তু কেন অপসারণ করা হবে আইকন অ্যাপ্লিকেশন থেকে প্রস্থান করুন?
এলিয়াহ কাগন

@ এলিয়া: প্রস্থান করা সম্ভবত সঠিক অভিব্যক্তি নয়, অ্যাপ্লিকেশনটি কেবল ক্র্যাশ করে ....
জ্যাকব ভিলিজ

@ জ্যাকবভিলিজম তাই, এটি কি Unক্য নির্দিষ্ট সঠিক? Ityক্যের ইতিমধ্যে এটির জন্য প্রক্রিয়া রয়েছে। প্রয়োজনীয়তা কি? শুধুমাত্র প্রক্রিয়া নাম psএবং xpropআউটপুট হিসাবে একই জানতে ?
সের্গেই কলডিয়াজনি

@ সার্জ প্রক্রিয়াটির নামটি .desktopফাইল থেকে "গণনা করা" , যা অগত্যা ডাব্লুএম_সিএলএএসএস নয়। WM_CLASS অ্যাপ্লিকেশন থেকে সেট করা যেতে পারে।
জ্যাকব Vlijm

@ জ্যাকবভিজিম আহ, সুতরাং ধরুন আপনি শুরু করেছেন firefox.desktop, এটি পিআইডি 1234 দিয়ে ফায়ারফক্স চালু করেছে, তবে WM_CLASS'টোটালি নট ফায়ারফক্স' এর মতো কিছুতে পরিবর্তিত হয়েছে। .desktopফাইল কিন্তু পরিবর্তন করে না। আপনি নামটি পিআইডি 1234 এর সাথে সংযুক্ত করেই পেতে চান WM_CLASS। আমার মনে হয় ঠিক কী করা দরকার তা আমি দেখছি। তবে আপনি আমার প্রথম প্রশ্নের উত্তর দেননি - এটি কেবল ityক্যের জন্য হলে কি ঠিক আছে?
সের্গেই কোলোডিয়াজনি

উত্তর:


3

সাধারণ ক্ষেত্রে এটি সমাধান করার কোনও উপায় নেই। আপনি যে প্রক্রিয়াটি নিয়ে আসেন না কেন, আমি বিশ্বাস করি যে প্রক্রিয়াটি যেভাবে প্রথমে প্রবর্তন করা হয় সেই পদ্ধতিটিকে সেভাবে অনুসরণ করার জন্য যদি আপনি এটি পরিবর্তন না করেন তবে এমন প্রক্রিয়া লিখতে সর্বদা সম্ভব হবে।

ডেমনগুলি এখনও চলছে কিনা তা ট্র্যাক করার জন্য আপস্টার্টকে ঠিক একই সমস্যাটি মোকাবেলা করতে হবে এবং আপস্টার্ট কাজের লেখকরা আপস্টার্টকে ট্র্যাক করার জন্য বিশদ (কাঁটাচামড়ার সংখ্যা) নির্দিষ্ট করতে হবে। এটি দেওয়া যে আপস্টার্ট সাহায্য ছাড়াই এটি পরিচালনা করতে পারে না, আমি ভাবি না যে আপনি এটিও করতে পারেন। এবং আপস্টার্ট এমনকি প্রক্রিয়াগুলি যেভাবে চালু হয় তারও নিয়ন্ত্রণে থাকে, যা আপনি এখানে এসেছেন বলে আমি মনে করি না।

আমি মনে করি আপনি যা করতে পারেন তা হ'ল আপনি ইতিমধ্যে যা করছেন। দেখার পক্ষে /proc/<pid>/statএবং /proc/<pid>/cmdlineএটি একটি যুক্তিসঙ্গত সাধারণ উপায়, তবে এখনও প্রতিটি ক্ষেত্রে ধরা পড়বে না। pgrepকমান্ড এই গোপন। আপনি যদি ইতিমধ্যে ব্যবহার না করে থাকেন তবে আপনার বিপরীতে মেলে এমন কিছুর বিকল্পগুলির জন্য pgrep ম্যানপেজটিpgrep একবার দেখুন ।

সমস্ত কিছু বলার পরেও, আমি নিশ্চিত নই যে আপনার এই কাজটি প্রথম স্থানে করা দরকার। আপনি যদি প্রক্রিয়াটি ট্র্যাক করতে না পারেন, তবে আমি দেখছি না যে ইউনিটি কীভাবে এটি করতে পারে। প্রথমে অ্যাপ্লিকেশন ক্রাশগুলি মুছে ফেলার জন্য আরও ভাল পদ্ধতির কী হবে না? আপনার বর্ণনার মতো এটির আশপাশে কাজ করার চেষ্টা না করে আপনার অ্যাপ্লিকেশনগুলি কেন ক্রাশ হচ্ছে (অবশ্যই এটি কোনও বাগ somewhere আমি ভাবছি যদি এটি কেবল ityক্য-সচেতন অ্যাপ্লিকেশনগুলিকেই প্রভাবিত করে যা ডিবিসের মাধ্যমে অতিরিক্ত কার্যকারিতার জন্য ইউনিটিতে ফিরে কল করছে ?


আপনার পুরো উত্তর জন্য আপনাকে ধন্যবাদ! আমি বিশদটি (বিশেষত আপনার শেষ অনুচ্ছেদ) খতিয়ে দেখব এবং যদি আমি 100% আত্মঘাতী না পাই তবে সম্ভবত "পরীক্ষামূলক" বিকল্প হিসাবে আইকনটি "পুনঃসূচনা" ফাংশনটি প্রস্তাব করব। সুসংবাদটি হ'ল এর মধ্যে, আমি যে পদ্ধতিটি ব্যবহার করেছি তাতে কোনও ব্যতিক্রম খুঁজে পাইনি। আবারও একবার ধন্যবাদ!
জ্যাকব Vlijm

1

xpropকমান্ড (প্রাসঙ্গিক অ্যাপ্লিকেশন উইন্ডোতে Alt-ট্যাব দ্বারা অনুসরণ, তারপর উইন্ডোতে একবার ক্লিক করুন) আমার জন্য কৌতুক করতে বলে মনে হয়।


WM_CLASSপ্রায়শই প্রক্রিয়া নামের সাথে মেলে তবে অবশ্যই সর্বদা নয়। একটি উইন্ডো সংজ্ঞায়িত (কোডিং), আমি এটি WM_CLASSআমার যা চাই তা দিতে পারি । এমনকি এটি নিজে নিজে উইন্ডোগুলি তৈরি করতে, বিভিন্ন প্রক্রিয়া থেকে চালানো, একটি লঞ্চার আইকনে গোষ্ঠী তৈরি করার চেষ্টা করেছি।
জ্যাকব Vlijm

উহু. এটা লজ্জার. আমার দাবিটি অস্বীকার করার মূল্য ছিল "... মনে হয় আমার জন্য কৌতুকটি করছে" শেষে। এটি এমন একটি ফাংশন যা আমি সত্যিই অপারেটিং সিস্টেমের মধ্যে তৈরি হওয়ার প্রত্যাশা করতাম এবং আমি ভেবেছিলাম যে আমি কীভাবে এটি করব তা জানি না। খুব কমপক্ষে, আমি "সম্পর্কে" তথ্যটি আশা করব।
el_gallo_azul
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.