আমি কীভাবে একটি ফাইলের কম বর্তমান বিষয়বস্তু সংরক্ষণ করতে পারি?


91

যদি আমি কোনও কমান্ডের ফলাফলগুলি পাইপ করেছি lessএবং তারপরে সিদ্ধান্ত নিয়েছি যে আমি কোনও ফাইলে বিষয়বস্তুগুলি সংরক্ষণ করতে চাই তবে এটি কি সম্ভব?

আমি aবাফারের শেষে একটি চিহ্ন স্থাপন করার চেষ্টা করেছি এবং তারপরে ফিরে |aviএসে পুরো বিষয়বস্তু প্রেরণে ব্যবহার করেছি vi, তবে এটি কার্যকর হয় না।


1
আপনার মূল কৌশলটি কাজ করবে যদি আপনি স্টাডিন থেকে লোকে লোড করার জন্য ভিআইকে নির্দেশ দেন |avi -।
— জো শ

উত্তর:


102

আমার সিস্টেমের উপর, man lessবলে

       গুলি ফাইলের নাম
              একটি ফাইল ইনপুট সংরক্ষণ করুন। এটি কেবল তখনই কাজ করে যদি ইনপুট হয় a
              পাইপ, একটি সাধারণ ফাইল নয়।

আমার জন্য কাজ কর!


4
একরকম, এটি আমার পক্ষে কাজ করে না - টাইপ করা 's' উইন্ডোটিকে এক লাইনে সরিয়ে দেয়। আমি ম্যাক এ আছি
— বেনরোথ

2
@ বেনরোথ: আপনার কাছে সম্ভবত একটি lesskeyফাইল রয়েছে যা সাধারণ কমান্ডগুলিকে পরিবর্তন করে। দেখুনman lesskey
— রেডগ্রিটিব্রিক

8
sআমার জন্যও কাজ করে না, তবে -o fileকরে।
— ব্যবহারকারী 1338062

1
আমি যখন ইন্টারেক্টিভ সহায়তা পেতে 'এইচ' টাইপ করি তখন পৃথিবীতে কেন এটি উল্লেখ করা হয় না? +1 যদি আপনি ইন্টারেক্টিভ man less
— সহায়তাটি

1
@ কমফ্রাক: হ্যাঁ এটি উবুন্টু 18.04-এ 488 এর চেয়ে কম তবে ডেবিয়ান 9 / প্রসারিত / স্থিতিশীল অঞ্চলে 481 এর চেয়ে কম নয়
— পিটার ভি।

24

গৃহীত উত্তর ম্যাকের জন্য কাজ করে না - যেমন @ বেনরোথ বলেছেন, চাপ দিয়ে sকেবল একটি রেখা সরানো হয় - তবে আপনি একটি আলাদা পদ্ধতি ব্যবহার করতে পারেন।

ইন less --help:

|Xcommand            Pipe file between current pos & mark X to shell command.

এবং

A mark is any upper-case or lower-case letter.
Certain marks are predefined:
     ^  means  beginning of the file
     $  means  end of the file

সুতরাং আপনি যদি বাফারের শীর্ষে যান ( <) এবং তারপরে:

|$cat > /tmp/foo.txt

বাফারের বিষয়বস্তুগুলি এতে লেখা হবে /tmp/foo.txt।


আপনি অন্য কমান্ডের মাধ্যমে দেখা বর্তমান বাফারটি পাইপ করতে চাইলে এই পদ্ধতিটি বিশেষত কার্যকর হতে পারে।
— ডোরন বেহার

3

আপনার lessখোলার পরে আপনি কোনও ফাইলের মধ্যে সম্পূর্ণ আউটপুট সংরক্ষণ করতে পারেন। পছন্দ করুন vim, কম কম্যান্ড সমর্থন করে।

কেবল কীটি টাইপ করুন s, তারপরে lessআপনি যেখানে ফাইলটি সংরক্ষণ করতে চান সেখানে ফাইলের নাম জিজ্ঞাসা করবেন, কেবল ফাইলের নামটি টাইপ করুন এবং তারপরে টাইপ করুন Enter।

চিয়ার্স


0

>অপারেটরটি ব্যবহার করুন । উদাহরণস্বরূপ: less foo.bar > output.txt।


ধন্যবাদ @ ডার, তবে আমি ইতিমধ্যে কম প্রয়োগে আছি, বাশ প্রম্পটে আর নেই
— জোনাথন ডে

প্রশ্নোত্তরে একটি মূল্যবান অবদান। সম্পূর্ণ পৃথক প্রশ্ন শুরু করার পরিবর্তে, কম ভিউয়ারের মাধ্যমে একাধিক ফাইলের স্ক্রিপ্ট করার জন্য একটি পদ্ধতির প্রয়োজন লোকেরা প্রচুর উপকৃত হতে পারে। আমাকে কয়েক ঘন্টা কাজ বাঁচিয়েছে (অনেক খোঁজার পরে)। ধন্যবাদ!
— এলডি জেমস

0

না আপনি যদি কম শুরু করে থাকেন, তবে আপনি যদি আগে জানেন যে আপনি এটি কম এবং একটি ফাইল প্রেরণ করতে চান তবে আপনি টি কমান্ডটি ব্যবহার করতে পারেন

command | tee out_file | less

ধন্যবাদ মার্ক, তবে আমি ইতিমধ্যে যদি কমই থাকি তবে এটি কীভাবে করবেন তা আমি বিশেষভাবে দেখছি
— জোনাথন ডে

0

আমার উত্তরটি খুব বেশি দেরিতে আসে আমি বিশ্বাস করি। তবে কেবল রেফারেন্সের জন্য, উপরে বেনরোথের উদ্বেগের প্রতিক্রিয়া হিসাবে: ওএসএক্স ব্যবহারকারীদের জন্য সবসময় কোলন প্রম্পটে "-l" ( DASH ELL পড়ুন ) বিকল্পটি ব্যবহার করে পেজারের বিষয়বস্তু লগ ফাইলে ফেলে দেওয়ার বিকল্প রয়েছে ।

পেজারটি লগ ফাইলের জন্য জিজ্ঞাসা করবে। এটি কী এবং টিপুন [সিআর]

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