লিনাক্সে চলমান গুই অ্যাপ্লিকেশনটির নাম এবং পথ কীভাবে সন্ধান করবেন?


1

আমি আমার সিস্টেম সম্পর্কে আরও জানতে আগ্রহী। উদাহরণস্বরূপ একটি জিইউআই অ্যাপ্লিকেশন "মুদ্রণ" শুরু হয়েছে। শিরোনামে একটি চকচকে সুন্দর নাম।

/ ইউএসআর / বিনে কোনও ফাইল "মুদ্রণ" নেই।

"মুদ্রণ" পরিবর্তে ফাইল সিস্টেমে অ্যাপ্লিকেশনটির আসল নামটি দেখানোর কিছু কৌশল আছে, উদাহরণস্বরূপ "মুদ্রণগু"?

উত্তর:


3

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

.desktopফাইলগুলি /usr/share/applicationsসাধারণভাবে grepজেনেরিকনামের জন্য- এ অবস্থিত থাকে = মুদ্রণের ক্ষেত্রে সেই স্ট্রিং সহ কমপক্ষে একটি লঞ্চারের তালিকা তৈরি করা উচিত।

যেমন আমার সিস্টেমে আমার "মুদ্রণ" নেই তবে আমার "পাঠ্য সম্পাদক" রয়েছে। আমি প্রয়োগের / এক্সিকিউটেবলের আসল নামটি জানতে চাই যাতে আমি চালিত হই:

grep "GenericName=Text Editor" /usr/share/applications/*

কোন ফলাফল:

/usr/share/applications/gedit.desktop:GenericName=Text Editor

সুতরাং "পাঠ্য সম্পাদক" এর জন্য "লঞ্চার" /usr/share/applications/gedit.desktop। এখন, আসল নামটি জানতে এবং "পাঠ্য সম্পাদক" এর জন্য এক্সিকিউটেবলের জন্য আমাকে দুটি কীগুলির মান গ্রেপ করতে হবে: Nameএবং Exec:

grep -E '(^Name=|^Exec=)' /usr/share/applications/gedit.desktop 

কোন ফলাফল:

Name=gedit
Exec=gedit %U

এক্সিকিউটেবলের সম্পূর্ণ পথের জন্য, এটি কেবল বিষয় বা চলমান:

which gedit

এবং এটি ফিরে আসে:

/usr/bin/gedit

2

আমি নীচে প্রদর্শিত স্ক্রিপ্ট execCmdGnome3.sh এ উত্তর স্থানান্তরিত করেছি । যার জিনোম শেল নামটি আমি জানি তাকে কীভাবে অ্যাপ্লিকেশনগুলি কল করতে হয় তা জানতে আমি এই ইউটিলিটিটি ব্যবহার করি।

#!/bin/bash
#
# Name: execCmdGnome3.sh
# Usage e.g.: sudo execCmdGnome3.sh "Document Viewer" 
# Output: Found Launcher: "evince.desktop"
#         Name=Document Viewer
#         Exec=evince %U

launcher=`grep "$1" /usr/share/applications/* | sed s/.*applications.// | sed s/:.*// | uniq`
echo "Found Launcher: \"$launcher\""
grep -E '(^Name=|^Exec=)' "/usr/share/applications/$launcher"
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.