কী-বাইন্ডিং ছাড়াই একটি পঠনের ফাংশন সম্পাদন করবেন?


26

আমি কেবল রিডলাইন ম্যান-পৃষ্ঠাটি পড়ছিলাম এবং আবিষ্কার করেছি এমন একটি দুর্দান্ত কমান্ড যা আমি জানতাম না। তবে বেশিরভাগের ডিফল্ট কী বাইন্ডিং নেই। শেল থেকে আনবাউন্ড কমান্ডগুলি কার্যকর করার কোনও উপায় আছে কি?

আমি কীভাবে ~ / .inputrc এ কমান্ডটি বাঁধতে চাইছি তা নয়, পরিবর্তে কীভাবে এটি শেল থেকে বাশ স্ক্রিপ্টে "ওয়ান অফ" হিসাবে কার্যকর করা যায়।

উদাহরণস্বরূপ, "ডাম্প-ভেরিয়েবল" কমান্ড। এটি প্রয়োগ করার মত যুক্তি হিসাবে আমি "ডাম্প-ভেরিয়েবল" খাওয়াতে পারি?


2
আমি মনে করি না, রিডলাইন ম্যানুয়াল এবং উত্সটিতে তাত্ক্ষণিক দৃষ্টি রয়েছে।
জিম প্যারিস

উত্তর:


10

আমি বিশ্বাস করি আপনি যা খুঁজছেন তা হ'ল bindআদেশটি is man builtinতথ্য অনুসারে চলমান bind <readline-command>আপনাকে ও-অফগুলি চালানোর অনুমতি দেয়, তবে, ম্যানুয়ালটির মতো এটি কাজ করতে আমি পেতাম না ... এটি চাবিগুলি তৈরি করে আমার জন্য কাজ করে না; আপনার মাইলেজ পরিবর্তিত হতে পারে. আমি নিম্নলিখিত কমান্ডগুলি পেয়েছি যা আপনার ব্যবহার হতে পারে।

bind -p # Equivalent to dump-functions [machine readable]
bind -P # Equivalent to dump-functions [human readable]

bind -s # Equivalent to dump-macros    [machine readable]
bind -S # Equivalent to dump-macros    [human readable]

bind -v # Equivalent to dump-variables [machine readable]
bind -V # Equivalent to dump-variables [human readable]

সম্পাদনা দ্রষ্টব্য আমি উল্লেখ করতে চাই যে এটি কতটা বিরক্তিকর তা হ'ল এটি ম্যানুয়ালটির মতো কাজ করে না যেমন এটি করা উচিত কারণ আপনি যদি টাইপ করেন bindএবং তারপরে স্বয়ংক্রিয়-সম্পূর্ণর জন্য ট্যাব টিপান, এটি সমস্ত কমান্ড দেখায়।


3
রিডলাইন ফাংশনগুলিতে সরাসরি কল করা: আমি মনে করি না যে ম্যানুয়ালটি আসলে দাবি করে যে আপনি এটি করতে পারেন; আপনি যদি সিনট্যাক্স ফর্মটি উল্লেখ করছেন bind readline-command: আমি সন্দেহ করি যে commandএখানে একটি সংজ্ঞা (ম্যাপিং) লাইন রয়েছে, সরাসরি কলযোগ্য পাঠ্যলাইন ফাংশন নয়কিছু প্ল্যাটফর্মে (উদাঃ ফেডোরা ২০) স্বতঃসম্পূর্ণতা একটি নব্বই স্পষ্টভাবে পূর্বনির্ধারিত , তবে অন্য অনেকের উপর নয় ; এর উপস্থিতি ইঙ্গিত দেয় না যে আপনি সরাসরি পাঠ্যলাইন ফাংশনগুলি কল করতে পারেন - এটি মোটামুটি "বোবা" কমান্ড-সমাপ্তির বৈশিষ্ট্য: সম্পূর্ণতা সরবরাহ করা কোনও যুক্তির উপর কাজ করে bind
mklement0

1
কার্যকারিতা / ম্যাক্রো / ভেরিয়েবল তালিকাভুক্ত করার জন্য কমান্ডগুলির জন্য +1; এটা মূল্য যোগ -Xজন্য শেল কমান্ড (মাধ্যমে সংজ্ঞায়িত -x)।
mklement0
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.