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


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.