কমান্ড লাইন থেকে আমি কীভাবে একটি সংগ্রহস্থল বিভাগের সমস্ত প্যাকেজের তালিকা পেতে পারি?


13

সিনাপটিক-এ, বিভাগ অনুযায়ী প্যাকেজ তালিকাভুক্ত করা যায়। উদাহরণস্বরূপ, নীচে চিত্রটিতে "অপেশাদার রেডিও (মহাবিশ্ব)" বিভাগের সমস্ত প্যাকেজ তালিকাভুক্ত করা হয়েছে।

কমান্ড লাইনে আমি কীভাবে এই জাতীয় তালিকা (সম্পাদনা: প্যাকেজ বিবরণ সহ) পেতে পারি?

আমার একটি কাঁচা তালিকা দরকার; একটি টার্মিনাল অ্যাপ্লিকেশন যেমন aptitudeকরবে না।

Synaptic


অ্যাপ-ক্যাশে অনুসন্ধান শেলস
প্যান্থার

@ বোধি জাজেন এটি একটি ভাল পরামর্শ, তবে কেবল বিভাগটি অনুসন্ধান করে না
স্টিভেন পেনি

উত্তর:


5

আচ্ছা, আপনি যদি বলছেন যে আউটপুটটির কারণে আপনি প্রবণতা ব্যবহার করতে চান না তবে আপনার জানতে হবে যে আপনি যা পছন্দ করেন তা পেতে এটি পরিবর্তন করতে পারেন:

aptitude -F'|%p|%d|' search '?section(hamradio)'

কৌশলটি -Fসুইচটিতে রয়েছে যা আউটপুট ফর্ম্যাটটি পরিবর্তন করে mod %pপ্যাকেজ মানে। যখন প্যাকেজের বিভিন্ন আর্কিটেকচার থাকে (যেমন amd64 বনাম i386) থাকে এবং %dএটি বিবরণকে আউটপুট করে তখনও এটি আউটপুট হয়। আপনি অনুসন্ধানের প্যাটার্নটিকে আরও বেশি ব্যক্তিগতকৃত করতে পারেন উদাহরণস্বরূপ ইনস্টলড প্যাকেজগুলি নেই:

aptitude -F'|%p|%d|' search '?section(hamradio) !~i'

যেখানে ~iইনস্টল করা মানে এবং এটি !একটি নয়, তাই এটি "নয় (!) ইনস্টল করা (~ i)" হিসাবে পড়েছে বা আপনি যদি কেবলমাত্র আপনার আর্কিটেকচারে উপলভ্য জিনিসগুলি চান তবে:

aptitude -F'|%p|%d|' search '?section(hamradio) ~r native'

~rহচ্ছে ?architecture()যা প্যাকেজ এবং স্থাপত্য সাথে মিলে যায় nativeযা তালিকা শুধুমাত্র বেশী সিস্টেম, সমতূল্য হিসাবে একই স্থাপত্য আছে dpkg --print-architecture

পূর্ববর্তী লাইনটি আরও সংক্ষিপ্তভাবে এ হিসাবে লেখা যেতে পারে:

aptitude -F'|%p|%d|' search '~s hamradio ~r native'

খুব মার্জিত, বিশেষত সঙ্গে -F'|%p|%d|'। তবে স্ট্রিং-এ এক্সপ্রেশন :i386যুক্ত করে প্যাকেজগুলি তালিকাভুক্ত করা কি সম্ভব হবে ? !search
সার্জ স্ট্রোব্যান্ড

1
@ জিনগার্ডন হ্যাঁ, কেবল ~r nativeঅনুসন্ধান পদগুলিতে যুক্ত করুন। ~rহচ্ছে ?architectureযা প্যাকেজ এবং স্থাপত্য মেলে nativeযা তালিকা শুধুমাত্র বেশী সিস্টেমের তুলনায় একই স্থাপত্য, সমতূল্য আছে dpkg --print-architecture। বিটিডাব্লু, আপনি কি প্যাকেজের বিবরণ সহ তালিকাটি চান?
ব্রায়াম

গ্রেট! এবং হ্যাঁ, আমি প্যাকেজের বিবরণ অন্তর্ভুক্ত করতে প্রশ্নটি সম্পাদনা করেছি। দয়া করে, সেই অনুযায়ী আপনার উত্তরটি সম্পাদনা করুন এবং আপনি উপযুক্তভাবে সবচেয়ে সংক্ষিপ্ত হওয়ার জন্য আমার সেরা উত্তরের ভোট পাবেন।
সার্জ স্ট্রোব্যান্ড

@ জিনগার্ডন এটি পরীক্ষা করে দেখুন
ব্রায়াম

1
@ জিনগার্ডন যদি আপনি aptitude-docপ্যাকেজটি ইনস্টল করেন এবং /usr/share/doc/aptitude/html/en/index.htmlআপনার ব্রাউজারে নেভিগেট করেন তবে আপনি file:///usr/share/doc/aptitude/html/en/ch02s04s05.htmlসমস্ত বাজে পারফরম্যান্স পাবেন।
ব্রায়াম

11

Dctrl- সরঞ্জামDctrl- সরঞ্জাম ইনস্টল করুন প্যাকেজ ইনস্টল করা আছে তা নিশ্চিত করুন । এটি অ্যাপটি এবং ডিপি কেজি প্যাকেজ তালিকাগুলি অনুসন্ধানের জন্য দরকারী কমান্ড সরবরাহ করে। অ্যাপ্লিকেশন সহ ইনস্টলযোগ্য একটি নির্দিষ্ট বিভাগ থেকে সমস্ত প্যাকেজগুলির সম্পূর্ণ বিবরণ পেতে রান করুন

grep-aptavail -F Section hamradio

এটি hamradioবিভাগের প্রতিটি প্যাকেজের সম্পূর্ণ প্যাকেজ মেটাডেটা প্রদর্শন করবে । আপনি যে সমস্ত দেখতে চান তা হ'ল প্যাকেজের নাম, চালান

grep-aptavail -n -F Section -s Package hamradio

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

grep-aptavail -n -F Section -s Package hamradio | sort | uniq

অথবা

grep-aptavail -n -F Section -s Package hamradio | sort -u

প্যাকেজ তালিকাটি বাছাই করতে এবং একই নামে সদৃশ প্যাকেজগুলি সরিয়ে ফেলতে।

মনে রাখবেন যে আপনাকে বিভাগটির আসল নামটি ব্যবহার করতে হবে, যা "মানব-পঠনযোগ্য" নাম থেকে আলাদা যা জিএনআইতে সিনাপটিক দেখায়। উদাহরণস্বরূপ, উপরের অনুসন্ধানগুলি hamradioসিনাপটিকে প্রদর্শিত স্ট্রিং "অ্যামেচার রেডিও" এর পরিবর্তে বিভাগটির নাম ব্যবহার করে ।

সমস্ত বিকল্পের কয়েকটি বিবরণ এবং কয়েকটি উদাহরণের জন্য গ্রেপ-অ্যাপটিভেলের জন্য ম্যান পৃষ্ঠাটি দেখুন ।


3

একক লাইনে আরও ক্ষেত্র, নির্বিচারে পৃথককারী সহ

নিম্নলিখিত এক-লাইনার একটি সংগ্রহস্থল বিভাগের সমস্ত অনন্য প্যাকেজ নামগুলি, তাদের বিবরণ সহ একক লাইনে মুদ্রণ করবে সমস্ত ক্ষেত্রগুলি একটি পাইপ চরিত্র দ্বারা পৃথক করা হয়, অর্থাত্ একটি ডাউন ডাউন পাইপ টেবিল রূপান্তর জন্য প্রস্তুত । ফলে টেবিল আমার ওয়েব সাইটে পাওয়া যেতে পারে।

grep-aptavail -n -s Package,Description -F Section hamradio |paste -sd '||\n' |sed 's:^:|:' |sort -u

2

প্রদত্ত বিভাগের অন্তর্ভুক্ত প্যাকেজগুলির তালিকা পেতে আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করতে পারেন:

$ dpkg-query -W -f='${binary:Package} ${Section}\n' | awk '{if ($2 == "shells") {print $1}}'
bash
bash-completion
busybox-initramfs
busybox-static
dash
zsh
zsh-common
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.