পূর্ববর্তী সমস্ত কমান্ডের চেয়ে একই প্রাথমিক অক্ষরগুলি সহ কমান্ডগুলির মাধ্যমে ব্রাউজ করতে আপ-তীরটি কনফিগার করুন


15

উপর bashকম্যান্ড-লাইন, আমাকে পূর্ববর্তী কমান্ড দেয়। কমান্ড লাইনগুলিতে numpyবা matlab, যখন আমি কয়েকটি অক্ষর টাইপ করি, আমাকে পূর্ববর্তী প্রবেশ কমান্ডটি সেই অক্ষরগুলি দিয়ে শুরু করে । আমি ঠিক কীভাবে এই আচরণটি সক্ষম করতে পারি bash?

কমান্ড-লাইনের ইতিহাসের মাধ্যমে অনুসন্ধানের আরও উন্নত উপায়গুলি সম্পর্কে আমি সচেতন, তবে কখনও কখনও একটি সহজ উপায় আরও সুবিধাজনক।

উত্তর:


18

আপনি যে রিডলাইন কমান্ডগুলির সন্ধান করছেন তা হ'ল history-search-*আদেশগুলি:

ইতিহাস-অনুসন্ধান-ফরোয়ার্ড
বর্তমান রেখার শুরু এবং বর্তমান কার্সারের অবস্থান (বিন্দু) এর মধ্যে অক্ষরের স্ট্রিংয়ের জন্য ইতিহাসের মাধ্যমে এগিয়ে অনুসন্ধান করুন। এটি একটি বর্ধিত অনুসন্ধান নয়।
ইতিহাস-সন্ধান-পশ্চাদপদ
বর্তমান রেখার শুরু এবং বিন্দুর মধ্যবর্তী অক্ষরের স্ট্রিংয়ের জন্য ইতিহাসের মধ্য দিয়ে পিছনে সন্ধান করুন। এটি একটি বর্ধিত অনুসন্ধান নয়।

এগুলি আপনার মধ্যে আবদ্ধ .inputrc, যেমন:

"\e[A": history-search-backward            # arrow up
"\e[B": history-search-forward             # arrow down

আপনাকে একটি কমান্ডের প্রথম অক্ষরগুলি প্রবেশ করার অনুমতি দেবে এবং তারপরে সেই স্ট্রিং দিয়ে শুরু হওয়া কেবলমাত্র কমান্ডের মধ্য দিয়ে চলার জন্য Upএবং Downকীগুলি ব্যবহার করুন .bash_history

উদাহরণস্বরূপ, লিখে viএবং Upপ্রথম পূর্ববর্তী কমান্ড আপনি নিতে হবে শুরু vi, মত vim somefile। প্রবেশ করা Upআপনাকে পরবর্তী পূর্ববর্তী উদাহরণে নিয়ে যেতে পারে, ইত্যাদি on

আপনি এখানে readline বাইন্ডিং সব সম্বন্ধে আরও পড়তে পারেন: http://linux.about.com/library/cmd/blcmdl3_readline.htm


10

আপনার প্রস্তাবিতগুলি করতে। / এ আপনার .inputrc এ নিম্নলিখিতগুলি যুক্ত করুন:

"\e[B": history-search-forward
"\e[A": history-search-backward

সম্ভবত আপনি আপনার .bash_ প্রোফাইলে নিম্নলিখিতগুলি যুক্ত করতে চান:

export INPUTRC=~/.inputrc

আপনি কেন এই "রফতানি" করছেন তা বিশদভাবে বলতে পারেন?
টেকনিক

2

একটি "প্রস্তুত করুন!" আপনি যে আদেশটি সন্ধান করছেন তা অনুসরণ করুন। আপনি যদি উপরে এবং নীচে তীরগুলির কার্যকারিতাটি প্রতিস্থাপন করতে চান তবে ইনপুটসিআর ফাইল (অন্যান্য উত্তরগুলির মতো প্রস্তাবিত) পরিবর্তন করে যাওয়ার উপায়।

"কমান্ড" হ'ল আদেশটি যদি আপনি সন্ধান করছেন তবে এটি লিখুন:

!comm

আউটপুট হিসাবে আপনার "কমান্ড" পাওয়া উচিত।

তেমনি, আপনি যদি একটি কমান্ড সন্ধান করতে চান যাতে কমান্ডের অংশটি অন্তর্ভুক্ত রয়েছে (তবে এটি শুরু নাও হতে পারে), ctrl + r চাপুন এবং তারপরে কমান্ডের অংশটি টাইপ করুন।

আপনার প্রবেশ করা পাঠ্য স্বয়ংক্রিয়ভাবে সম্পূর্ণ করতে আপনি "ট্যাব" টাইপ করতে পারেন (এতে ফাইলগুলিও অন্তর্ভুক্ত রয়েছে)। আপনি যদি আপনার ইতিহাসে না কমান্ডের সন্ধান করেন (তবে আপনার কাছে ইতিহাসের ফাইল নেই) এটি দরকারী

আপনি এখানে ইতিহাসের ফাইলটি "মাস্টারিং" সম্পর্কে আরও পড়তে পারেন: http://www.thegeekstuff.com/2008/08/15-exferences-to-master-linux-command-line-history/

এটি /programming/1030182/how-do-i-change-bash-history-completion-to-complete-what-already-on-the-line- এর একটি সম্ভাব্য সদৃশ


অন্যান্য উত্তরগুলি আমার প্রশ্নের উত্তর আরও সঠিকভাবে দিয়েছে, তবে এসও-তে নির্দেশকের জন্য ধন্যবাদ (এছাড়াও meta.stackexchange.com/q/4708/172266 দেখুন )।
12 এ জন্মানো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.