বাশে কেস সংবেদনশীল ট্যাব সমাপ্তি


142

সংবেদনশীলভাবে বাশ ট্যাবকে সম্পূর্ণ কেস করার কোনও উপায় আছে কি?

$ bash --version
GNU bash, version 3.2.48(1)-release (x86_64-apple-darwin10.0)
Copyright (C) 2007 Free Software Foundation, Inc.

আমি ম্যাক ওএস এক্স 10.6 ব্যবহার করছি

উত্তর:


170

/etc/inputrcঅন্তর্ভুক্ত পাঠ্য আপডেট করুন

সমাপ্তি-উপেক্ষা-কেস সেট করুন

তারপরে ^X ^Rকনফিগারেশনটি পুনরায় লোড করতে ব্যবহার করুন ।


30
"পাশাপাশি" - /etc/inputrcবা ~/.inputrcএকটি মনোনীত ফাইল INPUTRCকেবল এটি যেতে পারে। বাশ প্রম্পটে এটি প্রবেশ করা কার্যকর হবে না।
ডেনিস উইলিয়ামসন

উপস! আপনি ঠিক বলেছেন :)
জন টি

10
^X ^Rপুনরায় লোড করতেinputrc
মাধ্যাকর্ষণ

14
@ ডেনিস উইলিয়ামসন: আপনি bind "set completion-ignore-case on"কমান্ড লাইন থেকে করতে পারেন ; কারণ, আমি বিশ্বাস করি, কেবলমাত্র টার্মিনাল সেশনটি
ক্লে ব্রিজ

1
সুতরাং এমএসএসজিট এর যা আছে তবে এমএসওয়াইএস 2 এর অভাব রয়েছে! এখানে আমি এটি যেমন / ইত্যাদি / প্রোফাইলে ...
স্যামবি

111

[.]inputrcবনাম ব্যবহারের উপকারিতা এবং বিপরীতে বৈকল্পিকের জন্য প্রতিবন্ধীতার উপকারের সাথে পুনর্গঠিত .bash_profile। তার সাহায্যের জন্য আন্ডারস্কোর_ডে
টুপিটির টিপ ।

দ্রষ্টব্য: বাশ-এ কমান্ড-লাইন সম্পাদনা রিডলাইন গ্রন্থাগার দ্বারা সরবরাহ করা হয়েছে; এটিকে কাস্টমাইজ করা অ-তুচ্ছ, তবে শেখার পক্ষে মূল্যবান; এর বৈশিষ্ট্যগুলির মধ্যে পাঠ্যের পূর্বনির্ধারিত স্নিপেটগুলি সন্নিবেশ করানোর জন্য কাস্টম কীবোর্ড শর্টকাটগুলি সংজ্ঞায়িত করার ক্ষমতা অন্তর্ভুক্ত রয়েছে - বাশ রেফারেন্স ম্যানুয়ালটিতে কমান্ড লাইন সম্পাদনা দেখুন

করতে নিরবচ্ছিন্নভাবে ট্যাব-সমাপ্তি কেস-অবশ ব্যাশ মধ্যে করুন:


বিকল্প একটি: আপনার যদি ইতিমধ্যে থাকে:

  • একটি /etc/inputrcফাইল (সিস্টেম ব্যাপী প্রয়োগ করে, পরিবর্তনের প্রয়োজন হয় sudo)
  • এবং / অথবা একটি ~/.inputrcফাইল (ব্যবহারকারী-নির্দিষ্ট)

    এবং / অথবা

আপনি রিডলাইন গ্রন্থাগারটি ব্যাপকভাবে কাস্টমাইজ করার পরিকল্পনা করছেন এবং / অথবা স্ক্রিপ্টগুলির জন্য কল করার সময়ও তারা কাস্টমাইজেশনকে কার্যকর করতে চান read -e:

লাইন যুক্ত করুন

set completion-ignore-case on

আপনি যে ফাইলটি সেটিংটি সমস্ত ব্যবহারকারীর বা বর্তমান ব্যবহারকারীর জন্য কার্যকর হতে চান তার উপর নির্ভর করে ফাইল ফাইল করুন (প্রয়োজনে ফাইলটি তৈরি করুন)।

একটি সম্পর্কিত কমান্ড যা ফাইল এবং ডিরেক্টরিগুলির নাম সমাপ্তিকে সহজ করে তোলে:

set show-all-if-ambiguous on

এটি একাধিক ম্যাচ হলে দুবার ট্যাব টিপতে অপ্রয়োজনীয় করে তোলে ।


বিকল্প খ: অন্যথা, আপনি Readline আপনার ব্যবহারকারী-নির্দিষ্ট কমান্ড যোগ করতে পারেন ~/.bash_profileOS X এর (বা ফাইল ~/.bashrcলিনাক্স), তাদের একটি হিসাবে ক্ষণস্থায়ী দ্বারা একক আর্গুমেন্ট প্রাপ্ত করতে bindbuiltin :

bind "set completion-ignore-case on"
bind "set show-all-if-ambiguous on"

লক্ষ্য করুন bindযে কমান্ড ~/.bash_profile/ ~/.bashrcপারেন মধ্যে সমতুল্য কমান্ড বেশি প্রাধান্য নিতে /etc/inputrcবা ~/.inputrc

উপরে বর্ণিত হিসাবে, পাঠ্যলাইন কনফিগারেশনটি এইভাবে সংজ্ঞায়িত করা স্ক্রিপ্টগুলিতে কার্যকর হবে না যা ব্যবহারকারীদের ইনপুট পড়ার জন্য রিডলাইন সমর্থন সক্রিয় করার জন্য ডাকে ।read -e


10
শো-অল-যদি-অস্পষ্টতা এত সুন্দর! আমি প্রায়শই ভাবতাম কেন তারা আমাকে এই ক্রিয়াটি সম্পাদন করতে দুবার ট্যাব বানিয়েছে। আমার ভবিষ্যতে হাজার হাজার কীস্ট্রোক সংরক্ষণ করা হয়েছে! ধন্যবাদ!
ব্যবহারকারী 34112

4
দুর্দান্ত, এটি cdকমান্ডের জন্যও কাজ করে। যা এই প্রশ্নটি সমাধান করে এবং আমাকে হাজার হাজার কীস্ট্রোকও সংরক্ষণ করবে। :)
hoosierEE

1
দুর্দান্ত পয়েন্ট পুনরায় show-all-if-ambiguous। তবে, যেহেতু আপনি "বিকল্প হিসাবে" বলছেন, ফাইলগুলি bindযখন inputrcএমন অযৌক্তিক বলে মনে হচ্ছে তখন এটি করার মাধ্যমে আসলে কোনও উপকার হয় ?
আন্ডারস্কোর_ড

1
@ আসরস্কোর_ডি: ভাল প্রশ্ন; আমার আপডেট করা উত্তর দেখুন দয়া করে।
mklement0

1
শীতল ধন্যবাদ! ডেবিয়ান 8.2 এ আমার কোনওটি ছিল না inputrc, তবে আমি আনন্দের ~/.inputrcসাথে এগুলি তৈরি করে যুক্ত করেছি, আরও অন্যান্য সত্যিকারের দরকারী নির্দেশিকা। আমি অনুমান করি যে আমরা সমস্ত পাঠককে জানি যে এটি /etc/inputrc অন্যান্য ব্যবহারকারীদের উপর প্রভাব ফেলে (যদি না পরে প্রভাবিত সেটিংস ওভাররাইড না করে)? ঠিক যখন আমরা সতর্কতার কথা উল্লেখ করছি;)
আন্ডারস্কোর_১২

1

সমস্ত ব্যবহারকারীর জন্য কনফিগারেশন পরিবর্তন এড়াতে এবং রুট অনুমতিগুলি এড়ানোর জন্য নিম্নলিখিতটি ব্যবহার করুন:

if [ ! -a ~/.inputrc ]; then echo '$include /etc/inputrc' > ~/.inputrc; fi
echo 'set completion-ignore-case on' >> ~/.inputrc

তারপরে পুনরায় লগইন করুন বা load / .inputrc পুনরায় লোড করুন

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