যা / যেখানে পার্থক্য


112

মধ্যে পার্থক্য কি whichএবং whereis?


আমি দুঃখিত তবে আমার 10.5.8 ওএস এক্স সিস্টেমে যা এবং যেখানে সর্বদা একই ফলাফল দেয়। হতে পারে এটি একটি খুব ওএস এক্স সুনির্দিষ্ট প্রশ্ন, যেহেতু আমি সম্মত, একটি আলাদা ফলাফল আশা করা যায়। সম্ভবত যেখানে এটি করা উচিত তা মেনে চলে না। কমপক্ষে দুটি উদাহরণ (নীচে দেখুন) কাজ করছে না: হ'ল ls এবং Thereis পিএইচপি সর্বদা একই ফলাফল দেয় যা ... কেউ কি এটি নিশ্চিত করতে পারে? স্নো চিতা কি একই রকম আচরণ করে?
উলফ

হ্যাঁ আমি জানি, কেন আমি এই প্রশ্নটি জিজ্ঞাসা করেছি।
এম কে

@Wolf এখান থেকে একটি উদাহরণ whichএবং whereisদান বিভিন্ন আউটপুট (MacOS সিয়েরা দিকে) apple.stackexchange.com/questions/259047/...
ম্যাথু

@ এম কে 12 আমার কাছে মনে typeহয় শ্রেষ্ঠ is এটি
সংজ্ঞাতৃত

উত্তর:


121

সম্পর্কে শিখতে whereisএবং whichব্যবহার সম্পর্কে whatis?

$  whatis which
which                (1)  - shows the full path of (shell) commands

$  whatis whereis
whereis              (1)  - locate the binary, source, and manual page files for a command

মূলত, whereis"সম্ভবত কার্যকর" ফাইলগুলি whichঅনুসন্ধান করে, যখন কেবল এক্সিকিউটেবলের জন্য অনুসন্ধান করে।

আমি খুব কমই ব্যবহার করি whereis। অন্যদিকে which, বিশেষভাবে স্ক্রিপ্টগুলিতে খুব কার্যকর। whichনিম্নলিখিত প্রশ্নের উত্তর: এই আদেশটি কোথা থেকে এসেছে?

$  which ls
/bin/ls

$  whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.bz2 /usr/share/man/man1/ls.1.bz2

34
হোয়াটিস সম্পর্কে জানতাম না, ধন্যবাদ।
এম কে

1
বিটিডাব্লু, আমি "ওএসএক্স" ট্যাগটি সরিয়ে ফেলব, কারণ এই প্রশ্নটি সমস্ত ইউনিক্স রূপগুলিতে (লিনাক্স, বিএসডি, ম্যাক ওএস এক্স, ... সহ) প্রযোজ্য
ডিলিলসন সা মিয়া

ইউনিক্সে পরিবর্তন হয়েছে
এম কে

1
এর চেয়ে আরও অনেক কিছু আছে। আমার সিস্টেমে, যেখানে এবং যা বিভিন্ন নির্বাহযোগ্য পাথ ফেরায়। আমি কেবল সেই পথেই যেতে পারি যা আসলে চালিত হয় whereis, এর জন্য নয় which
জর্ডান রিটার

1
@ জর্ডানরিটার: এটি হতে পারে না! whichআসল পথ দেখায় আপনি কি নিশ্চিত যে নির্দেশিত পথটি whichকেবলমাত্র নির্দেশিত পথের একটি মূল প্রতিলিপি নয় whereis? হতে পারে এটি শেল ওরফে। ব্যাশে, চালানোর চেষ্টা করুন type your_cmd_here
ডেনিলসন সা মিয়া

23

whereis নির্দিষ্ট কমান্ডের জন্য মান * নিক্স অবস্থান অনুসন্ধান করে।

whichআপনার ব্যবহারকারী-নির্দিষ্ট PATH অনুসন্ধান করে (এটিতে এমন কয়েকটি অবস্থান অন্তর্ভুক্ত থাকতে পারে যেখানে এটি অনুসন্ধান করে এবং অন্যকে অন্তর্ভুক্ত নাও করতে পারে - এতে এমন কিছু জায়গা অন্তর্ভুক্ত থাকতে পারে যা whereisআপনি নিজের পথের সাথে যুক্ত করলে অনুসন্ধান না করে)


* নিক্স কী?
এম কে

2
ইউনিক্স, লিনাক্স ইত্যাদি (ম্যাক ওএস এক্স ইত্যাদি সম্পর্কিত)

8
ওহহ, হাহ, আমি সবসময়ই ভেবেছিলাম যে স্ট্যাকের ওভারফ্লো ইউনিক্সে ইউ সেন্সর করছে যখনই আমি দেখলাম যে কোনও কারণে ..
mk12

নাঃ। সৃজনশীল ওয়াইল্ডকার্ডের ব্যবহারের ঠিক একটি সাধারণ প্রচলিত অনুরূপ অপারেটিং সিস্টেমের একটি পরিবারকে বোঝাতে refer ;)

6

তাদের ম্যান পৃষ্ঠাগুলি উদ্ধৃত:

যেখানে :

যেখানে নির্দিষ্ট ফাইলগুলির জন্য উত্স / বাইনারি এবং ম্যানুয়াল বিভাগগুলি সন্ধান করে।

এই ক্ষেত্রে :

$ whereis php
php: /usr/bin/php /usr/share/php /usr/share/man/man1/php.1.gz

যেমন, "পিএইচপি" এক্সিকিউটেবল এবং কিছু অন্যান্য স্টাফ (যেমন ম্যান পেজ)।


এবং যা :

যা বর্তমান পরিবেশে সম্পাদিত হবে এমন ফাইলগুলির পাথের নামগুলি প্রদান করে

এই ক্ষেত্রে :

$ which php
/usr/bin/php

অর্থাত্ কেবল "পিএইচপি" এক্সিকিউটেবল।


1

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

$ যা ls
/ bin / ls
$ যা ifconfig
$ # আউটপুট নেই, কারণ ifconfig কেবলমাত্র রুটের PATH এ বিদ্যমান।

যার মধ্যে এক্সিকিউটেবল, উত্স ফাইল এবং ম্যানুয়াল পৃষ্ঠাগুলি স্বয়ংক্রিয়ভাবে সিস্টেম দ্বারা নির্মিত একটি ডাটাবেস ব্যবহার করে অনুসন্ধান করুন।

$ যেখানে কম
কম: / বিন / কম / ইউএসআর / বিন / কম / ইউএসআর / বিন / এক্স 11 / কম / ইউএসআর / শেয়ারেমান / মান / মান 1/less.1.gz

তবে মনে হয় যে যেখানে আছে এবং সনাক্ত করা একই ডাটাবেস ব্যবহার করে না। আমি যখন কোনো সফ্টওয়্যার ইনস্টল এবং তারপর ব্যবহার করা whereis এবং সনাক্ত এই সফটওয়্যার জন্য অনুসন্ধান করতে অবিলম্বে। ফলস্বরূপ এটি যেখানে এই সফ্টওয়্যার সম্পর্কিত কিছু ফাইল সন্ধান করতে পারে যখন সনাক্ত করতে পারেনি। তারা কি সত্যিই বিভিন্ন ডাটাবেস ব্যবহার করে? ডাটাবেস কীভাবে কাজ করে? - ওয়েল, পেডেন্ট হতে অস্বীকার সম্পর্কে কীভাবে? :)


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