পর্দা সাফ না করে "কম" প্রস্থান করার কোনও উপায় আছে কি?


68

তুলনামূলক প্রায়শই, আমি নিজেকে lessছাড়তে চাইছি তবে যা উল্লেখ করছি তা স্ক্রিনে রেখে আবার ফিরে যেতে চাই। এই কাজ করতে কোন উপায় আছে কি? সমাধান নীচে উপস্থিত?

(আমার বর্তমান কার্যসংক্রান্ত প্রস্থান করার জন্য, তারপর ব্যবহার করা হয় more। সুতরাং কোনো কার্যসংক্রান্ত যে যে এর চেয়ে ভাল স্বাগত জানানো হয় না। আদর্শ আমি ব্যবহার করতে পারেন একবার আমি ইতিমধ্যে ভিতরে আছি হবে less, সম্ভবত একটি শেল সেটিং বা কিছু স্ক্রিপ্টিং যান।)

আমার ডেস্কটপটি ওএসএক্স, তবে আমি আরএইচইল এবং উবুন্টু সার্ভার ব্যবহার করি।


1
একটি দীর্ঘ আউটপুট পড়া (যেমন git diffবা হিসাবে git log) less -Xআমার টার্মিনালে স্ক্রোল বাফারটি গ্রহণ করবে এবং পূর্ববর্তী আউটপুটটির বেশিরভাগ সরিয়ে ফেলবে। আমি এটিকে পছন্দ করব যদি lessপ্রস্থানের সময় কেবলমাত্র শেষ স্ক্রিনফুল দিয়ে বেরিয়ে আসতে পারত; অর্থাত্ প্রস্থান করার পরে স্ক্রোল বাফারের এক পৃষ্ঠার বেশি আর নেওয়া হবে না less। কোন ধারনা?
মুসিফিল

যাইহোক, -Rসাধারণত তুলনায় নিরাপদ পছন্দ -r
মুশিফিল

ধন্যবাদ। যারা ভাবছেন তাদের জন্য:-R is "Like -r, but only ANSI "color" escape sequences are output in "raw" form. Unlike -r, the screen appearance is maintained correctly in most cases."
স্টিভ বেনেট

@ মুসিফিল সম্ভবত-সি?
ভেনেসা ফিপস

@ ম্যাথিউফিপস: আমার ধারণা -cআপনি যখন ভিতরে move ুকবেন তখন কীভাবে স্ক্রিনটি আপডেট করবেন less
মুশিফিল

উত্তর:


68

এটি আসলে আপনি ব্যবহার করছেন টার্মিনাল এমুলেটরটির একটি ফাংশন (এক্সটার্ম, জিনোম-টার্মিনাল, কনসোল, স্ক্রিন)। একটি বিকল্প স্ক্রিন বা আল্টস্ক্রিন চালু হয় যখন প্রোগ্রামগুলি যেমন lessবা অনুরোধ vimকরা হয় তখন। এই আল্টস্ক্রিনটির কোনও ইতিহাসের বাফার নেই এবং আপনি প্রোগ্রামটি ছেড়ে দিলে সঙ্গে সঙ্গে প্রস্থান করে, মূল স্ক্রিনে ফিরে যা পূর্ববর্তী উইন্ডো সামগ্রীর ইতিহাস এবং স্থান নির্ধারণকে পুনরুদ্ধার করে।

less"-X" যুক্তিটি পাস করে আপনি একটি আল্টস্ক্রিনে আরম্ভ হতে বাধা দিতে পারেন ।

less -X /path/to/some/file

আপনি পরিবেশ-পরিবর্তনশীল হিসাবে "-X "ও পাস করতে পারেন। সুতরাং আপনি যদি ব্যবহার করে bashথাকেন তবে এটি এতে রাখুন ~/.bashrc:

export LESS="-X"

যাইহোক, এটি টার্মক্যাপ (টার্মিনাল ক্ষমতা) আরম্ভ এবং ডিনিটালাইজেশন অক্ষম করে, সুতরাং আপনি যখন ব্যবহার করবেন তখন অন্যান্য দর্শনগুলি lessউপস্থিত হতে পারে।

আরেকটি বিকল্প ব্যবহার করতে হবে screenএবং বিকল্প সেট altscreen offআপনার ~/.screenrclessস্ক্রিনটি সাফ করবে না এবং রঙিন বিন্যাস সংরক্ষণ করা উচিত। সম্ভবত tmuxএকই বিকল্প থাকবে।

এই ব্লগ এন্ট্রি সমস্যা বর্ণনা করে এবং gnome-terminalবিভিন্ন সাফল্যের সাথে সুনির্দিষ্ট কিছু ভিন্ন সমাধান সরবরাহ করে ।


2
পারফেক্ট। এখানে কি কোন খারাপ দিক রয়েছে?
স্টিভ বেনেট

2
অপেক্ষা করুন, আমি ইতিমধ্যে একটি আবিষ্কার করেছি - git log(এবং সম্ভবত অন্যান্য রঙিন কমান্ডগুলি) আউটপুট গণ্ডগোল হয়ে গেছে।
স্টিভ বেনেট

1
: @SteveBennett যে যথেষ্ট ছোট আমি এটা উপনাম করতে চাইalias les="/usr/bin/less -X"
bonsaiviking

4
আরে, আমি মনে করি আমি শুধু থেকে একটি প্রতিষেধক আবিষ্কৃত git logউপরে ইস্যু: export LESS="-r -X"। (কোন ধারণা কি পার্শ্ব প্রতিক্রিয়া যে হয় ...)
স্টিভ বেনেট

5
প্রকৃতপক্ষে, পেজারটি চালিত হওয়ার সময় এটি আনসেট না হলে চলকটি gitসেট করে , যাতে আপনি কেবল সেট না করে ছেড়ে যেতে পারেন এবং স্বয়ংক্রিয়ভাবে চলতে পারে । দেখুন মধ্যে আরও তথ্যের জন্য। LESSFRSXLESSless-FRSXcore.pagergit-config(1)
মুশিফিল

4

জর্জের সমাধানটি আমার পক্ষে কার্যকর হয়নি, তবে এই সমাধানটি হয়েছে ( তার উত্তরটিতে লিঙ্ক করা ব্লগ থেকে )।

  1. $ infocmp -I xterm > ~/xterm-noclear.src

  2. সম্পাদনা করুন x / xterm-noclear.src

    • 'এক্সটার্ম' থেকে দ্বিতীয় লাইনে নাম পরিবর্তন করে 'এক্সটার্ম-নিউক্লিয়ার', বা আপনার যেটি মানানসই করুন (উপস্থিত থাকলে 'এক্সটার্ম-ডেবিয়ান' পরিবর্তন করুন)

    • 'স্ম্যাকআপ' এবং 'আরএমকিআপ' নির্দেশাবলী সরান (উদাঃ "স্মকআপ = \ ই [? 1049 ঘন্টা," এবং "আরএমকুপ = \ ই [? 1049 ল,")

  3. $ mkdir ~/.terminfo

  4. $ tic ~/xterm-noclear.src (এক্স / এক্সটারম-নিউক্লিয়ার আপনার ~ / .terminfo ডিরেক্টরিতে প্রদর্শিত হওয়া উচিত)

  5. $ export TERM=xterm-noclear (এখন কমের আচরণটি পরীক্ষা করুন এবং যদি সন্তুষ্ট হন তবে আপনার ~ /। প্রোফাইলে রফতানির নির্দেশিকা লাইন যুক্ত করুন)

(আমি জাজের জবাবের প্রত্যাখ্যানিত সম্পাদনা থেকে এই নির্দেশাবলী সরাসরি অনুলিপি করেছি))


4

আমার যেভাবে মনে আছে তা হল less -SEXযখন আমি পর্দায় আউটপুট ডাম্প করতে চাই তবে লাইনগুলি মোড়ানো না চাই। উদাহরণস্বরূপ docker ps | less -SEXএটি যা করে তা হ'ল:

  • -S
    • মোড়কের পরিবর্তে স্ক্রোল করুন
    • আপনি যদি ড্রপ করেন তবে আপনি -Eআপনার তীরচিহ্নগুলি স্ক্রোল করতে ব্যবহার করতে পারেন
  • -E
    • আপনি যখন EOF এ পৌঁছান তখন প্রস্থান করুন
  • -X
    • টার্ম অদলবদল / ব্লকিং প্রতিরোধ করুন
    • "স্মৃতি" অংশটি হ'ল আমি জানি যে এস এবং ই কী করে তাই এটি অন্য অংশটিও হতে হবে। (এবং এই কমান্ডটিকে মেমোরিতে প্রতিশ্রুতিবদ্ধ করার কারণটি হ'ল) ​​আমরা আবদ্ধ আউটপুটটি ডাম্প করতে (কোনও ইন্টারেক্টিভ সেশনে প্রবেশ করতে চাই না) চাই।

যদি আপনি মনে করতে না পারেন তবে আপনার less -SEXজন্য খুব বেশি আশা নেই। প্রতিবার অনুমান করার পরে কেবল গুগল করুন।


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