আমি কীভাবে মানুষকে কম ব্যবহার করতে পারি?


21

ডিফল্টরূপে, পাঠ্য আউটপুট manব্যবহার lessকরে। আমি কীভাবে এটি স্ট্যান্ডআউটে আউটপুট করতে পারি? আমার টার্মিনাল এমুলেটরের একটি স্ক্রোল বার এবং অনুসন্ধান ফাংশন রয়েছে এবং আমি তীর কীগুলির পরিবর্তে সেগুলি ব্যবহার করতে চাই।

উত্তর:


31

প্রকৃতপক্ষে এটি পরিবেশ MANPAGERবা PAGERভেরিয়েবলের মধ্যে যা নির্দিষ্ট করা আছে তা ব্যবহার করে ।

আপনার manবাস্তবায়ন এবং সংস্করণ অনুসারে পেজার নির্দিষ্ট করার জন্য একটি কমান্ড লাইন সুইচও থাকতে পারে।

সঙ্গে মনুষ্যসৃষ্ট ডিবি বাস্তবায়ন আমি সব উপায়ে কাজ নিচে ব্যবহার করুন:

MANPAGER=cat man man

PAGER=cat man man

MANOPT='-P cat' man man

man -P cat man

এটি স্থায়ীভাবে সেট করতে, কেবল এটি আপনার ~/.bashrc(বা আপনার শেল দ্বারা ব্যবহৃত অন্যান্য আরম্ভকরণ ফাইল) এ যুক্ত করুন:

export MANPAGER=cat

এটি পুরানো কিছু manবাস্তবায়ন নিয়েও কাজ করে, যদিও MANOPTম্যান-ডিবি নির্দিষ্ট:

export MANOPT='-P cat'

(বেটার সেট না PAGERযে ভাবে। যে এক অনেক অন্যান্য প্রয়োগের মাধ্যমে খুব ব্যবহার করা হয়।)

একটি বিশ্বব্যাপী কনফিগারেশন ফাইলও থাকতে পারে। man-db আছে /etc/man_db.confবা /etc/manpath.config। সেখানে আপনি সেট করতে পারেন:

DEFINE    pager    cat

তবে দুর্ভাগ্যক্রমে এটি কেবল বিবেচনায় নেওয়া হয় যদি না MANPAGERউভয়ই PAGERসেট করা হয়।


2
ভাল উত্তর. লিখেছেন: ~/.bashrc, এছাড়াও আপনি একটি শর্তাধীন মধ্যে রপ্তানি মোড়ানো যায়নি, তাই এটি শুধুমাত্র পেজার সেট করে যদি এটি উপযুক্ত টার্মিনাল / এমুলেটর আছে: if [ "x$TERM" = "xxterm" ]; then export MANPAGER=cat; fi; স্পষ্টতই xtermউপযুক্ত এমুলেটর সঙ্গে প্রতিস্থাপন ।
কেভিন

1
প্রকৃতপক্ষে, এটি ভাল এবং নকশার দ্বারা manpath.config পরে বিবেচনা করা হয়। PAGER এবং MANPAGER উভয়ই ব্যবহারকারীর স্তর, যেখানে কনফিগার ফাইলটি সিস্টেম স্তর। যদি সিস্টেমের স্তরটি অগ্রাধিকার গ্রহণ করে তবে ব্যবহারকারীরা মোটেই ওভাররাইড করতে পারবেন না।
পল ডি ভ্রিজে

@PauldeVrieze, আপনি সঠিক হয় MANPAGER। আমি "দুর্ভাগ্যক্রমে" শব্দটি ব্যবহার করেছিলাম যে আচরণটিও প্রযোজ্য PAGER, যা একটি জেনেরিক সেটিংস (বহু সরঞ্জাম দ্বারা ব্যবহৃত) এবং আমি এটি নির্দিষ্ট কোনও সেটিংস (কেবলমাত্র একটি সরঞ্জাম দ্বারা ব্যবহৃত) ওভাররাইড না করা পছন্দ করি , এমনকি যদি তা একটি সিস্টেম স্তর।
manatwork

আপনি যদি কোনও একক সরঞ্জামের জন্য একটি নির্দিষ্ট সেটিংসকে ওভাররাইড করতে চান তবে আপনি সর্বদা একটি উলাম, শেল ফাংশন বা একটি র‌্যাপার স্ক্রিপ্ট তৈরি করে এটি করতে পারেন। এর মধ্যে যে PAGER=cat manalias man='PAGER=cat MANPAGER=cat man'
কোনওটির

6

কেবলমাত্র পাইপ আউটপুট manকরতে cat?

man ls | cat   # useful use of cat

6
নোট করুন যে manবাস্তবায়নের উপর নির্ভর করে , যে 1) ত্রুটি বৃদ্ধি পায়, 2) টার্মিনালে ট্রফ ফর্ম্যাট কোডগুলি প্রদর্শন করে, 3) সমস্ত বিন্যাস অপসারণ করে, 4) প্রত্যাশার মতো কাজ করে।
manatwork

2
আমি এটি 4 এর বাইরে আর কখনও করতে দেখিনি
কিথ থম্পসন

@ কিথথম্পসন ম্যাকোসগুলি আউটপুট কোনও ফাইল বা পাইপ সত্ত্বেও manপেজার সেটটি ব্যবহার করবে বলে মনে হয় MANPAGER। এবং যদি পেজারটি হয় less, তবে এটি সমস্ত ভাল কারণ আউটপুটটি যখন পাইপ হয় তার lessমতো আচরণ করে cat... তবে আপনি যদি অন্য কিছু ব্যবহার করেন (যেমন ভিম, যা আমি ব্যবহার করি) তবে এটি এতটা ভাল নয়।
মুরু

1

পেজার ছাড়াই ম্যান আউটপুট উত্পন্ন করতে এই আদেশগুলি ব্যবহার করে দেখুন।

  • man ls | cat (উত্পন্ন স্থির প্রস্থ)

  • man -P cat ls (উত্পন্ন ভেরিয়েবল প্রস্থ)

আমি একটি জিএনইউ লিনাক্স সিস্টেমে ছিলাম


1

আরেকটি কোণ: টনির উত্তরের অনুরূপ।

ম্যান আউটপুটটিকে আপনি কোনও ফাইলে পুনর্নির্দেশ করতে পারেন এবং এটি আপনার প্রিয় পাঠ্য সম্পাদক সহ দেখতে বা এটিতে বুকমার্ক, মন্তব্য ইত্যাদি যোগ করতে পারেন।

man bash  > bashman.txt

আমার কাছে ব্যাশ ম্যান পৃষ্ঠার অনুলিপি রয়েছে পাশাপাশি আমার বিন ডিরেক্টরিতে টেক্সট ফাইল হিসাবে বাশ ফ্লো নিয়ন্ত্রণ এবং বাশ পরীক্ষার পতাকাগুলির সংরক্ষিত অংশগুলি রয়েছে যাতে আমি রেফারেন্সের জন্য এগুলি ঠিক আমার পাঠ্য সম্পাদক (কেট) এ লোড করতে পারি I'm বাশ স্ক্রিপ্ট লিখছি।


সতর্কতা: আপনার সিস্টেম এবং ম্যান পৃষ্ঠার উপর নির্ভর করে উপরের কমান্ডের ফলে ফর্ম্যাটেড তথ্য এবং ফাইলের অক্ষর নিয়ন্ত্রণ করা যেতে পারে।

এটি এড়াতে, যেমন বলা হয়েছে তেমন করুন LESS='+/^TIPS' man man:

To  get a  plain  text  version  of a man page, without backspaces and
underscores, try

  # man foo | col -b > foo.mantxt

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