বাইনারি উত্স প্যাকেজ সন্ধান করতে কমান্ড?


33

আমি জানি একটি whichকমান্ড আছে, এটি বাইনারি (যেমন which sh) এর পুরো নাম প্রতিধ্বনিত করে । তবে, আমি মোটামুটি নিশ্চিত যে একটি কমান্ড রয়েছে যা প্যাকেজটির প্রতিধ্বনি দেয় যা একটি নির্দিষ্ট বাইনারি সরবরাহ করে। এমন আদেশ আছে কি? যদি তাই হয়, এটা কি? আমি এটি চালাতে সক্ষম হতে চাই:

commandName ls

এবং পেতে

coreutils

উদাহরণ স্বরূপ.

উত্তর:


35

4
ধন্যবাদ! dpkg -S `which COMMANDHERE`আমার জন্য কাজ।
দেলান আজাবানী

জেন্টো: কিফিল <নাম>
সের্গেই

dpkg -Sবাইনারি প্যাকেজের নামের সন্ধান করে, যা উত্স (কোড) প্যাকেজের নাম থেকে পৃথক হতে পারে।
টিনো

কেবল সম্পূর্ণতার জন্য, বিকল্পটির -Sসংক্ষিপ্ত রূপটি --searchযা আসলে dpkg-queryকমান্ডের একটি বিকল্প (তবে প্লেইন dpkgখুব বেশি কাজ করে)

10

আপনি যে প্যাকেজটি ইনস্টল করেননি সেগুলিতে যদি ফাইলগুলি সন্ধান করতে চান তবে অ্যাপ-ফাইল ব্যবহার করুন

apt-get install -y apt-file
apt-file update

তারপরে, কিছু খুঁজে পেতে:

apt-file search /usr/bin/file

অথবা

apt-find search file

"ফাইল" যেখানে আপনি অনুসন্ধান করছেন তার নাম।

আপনি যদি প্রতিটি ডিবিয়ান সিস্টেমে এটি চালিয়ে যাওয়া অনুভব না করেন তবে আপনি এই স্ক্রিপ্টটি ব্যবহার করতে পারেন:

#!/bin/bash
which apt-get >/dev/null || { echo apt-get not found >&2; exit 1; }
which apt-file >/dev/null || { apt-get install -y apt-file;  apt-file update; }
unset i; IFS=$'\x0a'; select i in $( apt-file search "/$@" ); do 
    test -n "$i" || break; apt-get install "${i%% *}"; done

আমি তখনই এটি বেত্রাঘাত করেছি, তবে এটি বেশ কার্যকর বলে মনে হচ্ছে।

দ্রষ্টব্য: "dpkg -S" কেবলমাত্র ইতিমধ্যে ইনস্টল করা জিনিসগুলি সন্ধান করে।


3
-yপ্যারামিটার ব্যবহার করা বিপজ্জনক, এটি যেকোন সংখ্যক বিষয়কে হ্যাঁ বলতে পারে। স্ক্রিপ্টের মধ্যে এটা জরিমানা হতে পারে, কিন্তু প্রথম কমান্ড সত্যিই পড়া উচিত apt-get install apt-fileছাড়া -yআপনি USER- এর সিস্টেমে দেখতে কেমন জানি না পারে।
jmiserez
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.