কমান্ড-লাইন সরঞ্জামগুলির কীভাবে তাদের নিজস্ব স্বয়ংসম্পূর্ণ তালিকা রয়েছে?


24

উবুন্টুতে থাকা বাশ কীভাবে কোনও সরঞ্জামের নির্দিষ্ট ক্রিয়াকলাপটি জানতে পারে?

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

আমি গোতে একটি কমান্ড-লাইন সরঞ্জাম বিকাশ করছি এবং এটি সমর্থন করে এমন ডিস্ট্রোদের জন্য এই বৈশিষ্ট্যটি সরবরাহ করতে চাই।


1
আমি আপনার শিরোনাম এবং ট্যাগগুলি থেকে "উবুন্টু" সরিয়েছি কারণ এটি আরও সাধারণ প্রশ্ন হিসাবে ভাল (উত্তরটি কোনও ডিসট্রোর সাথে নির্দিষ্ট নয়)।
স্বর্ণলোকস 11:58

1
দুর্দান্ত প্রশ্ন, আমি প্রায়শই এটি নিয়ে ভাবতাম, তবে এটি সন্ধান করার জন্য কখনই সময় নেয়নি।
একাটাক্রিটোস

উত্তর:


25

এটি ব্যাশ ভি 4 এর সমাপ্তি বৈশিষ্ট্যগুলি ব্যবহার করে এটি করে। জন্য সমাপ্তির কোড apt-getদ্বারা প্রদান করা হয় bash-completionপ্যাকেজ এবং এ অবস্থিত /usr/share/bash-completion/completions/apt-get। যে অ্যাপ্লিকেশনগুলির সমাপ্তি রয়েছে এবং বেস bash-completionপ্যাকেজের অংশ নয় তাদের সম্পূর্ণকরণ স্ক্রিপ্টগুলিতে রাখে /etc/bash_completion.d

সম্পূর্ণকরণগুলি সোর্সিংয়ের মাধ্যমে লোড হয় /etc/bash_completion। ঠিক যেখানে এটি করা হয়ে গেছে সেখানে দেবিয়ান বা উবুন্টু সংস্করণগুলির উপর নির্ভর করে ভিন্ন হবে। যার ফলস্বরূপ /usr/share/bash-completion/completionsএবং সমস্ত কিছুর উত্স হবে /etc/bash_completion.d


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

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