আমি কীভাবে পুরো ফাইলটি দেখতে এবং সেই ফাইলটিতে আরও ডেটা যুক্ত হওয়ার অপেক্ষায় থাকতে পারি?


21

আমি পুরো ফাইলটি পড়তে চাই এবং এটি সম্পূর্ণ ইনপুটটির জন্য অপেক্ষা করতে চাই, ঠিক যেমন tail -f তবে সম্পূর্ণ ফাইল প্রদর্শিত হয়।

এই ফাইলটির দৈর্ঘ্য সর্বদা পরিবর্তিত হবে, কারণ এটি একটি .logফাইল।

আমি ফাইলটির দৈর্ঘ্য না জানলে কীভাবে এটি করতে পারি?


2
আপনি ইতিমধ্যে জানেন যে লেজটি আপনি যা চান তার কাছাকাছি। আপনি কি এর জন্য ম্যান পৃষ্ঠাটি পড়েছেন?
njzk2

1
less"এফ" কী আছে। আপনার ইন্টারঅ্যাকশন প্রয়োজন হলে দরকারী।
থোরবজর্ন রাভন অ্যান্ডারসন

উত্তর:


33

tailআপনাকে -nশেষ থেকে প্রদর্শিত লাইনের সংখ্যা নির্দিষ্ট করতে যোগ করতে দেয় যা একত্রে ব্যবহার করা যেতে পারে -f। যদি -nএটির সাথে শুরু হওয়ার যুক্তিটি শুরু +থেকে লাইনগুলির গণনা হয় ( 0এবং 1পুরো ফাইলটি প্রদর্শন করে, 2প্রথম লাইনটি এড়িয়ে যায়, @ বেন দ্বারা নির্দেশিত)। সুতরাং ঠিক করুন:

tail -f -n +0 filename

আপনার লগ ফাইল আবর্তিত পেতে পারেন, আপনি যোগ করতে পারেন --retry(অথবা মেশা -f and --retryমধ্যে -Fযেমন @Hagen প্রস্তাব)

এছাড়াও মনে রাখবেন যে কোনও গ্রাফিকাল টার্মিনালে আপনি মাউসটি ব্যবহার করতে পারেন এবং PageUp/ PageDownইতিহাসে ফিরে স্ক্রোল করতে পারেন (ধরে নেওয়া আপনার বাফার যথেষ্ট বড়) আপনি যদি প্রস্থান করতে Ctrl+ ব্যবহার করেন এমনকি এই তথ্যটি সেখানে থাকে । আপনি যদি এটি ব্যবহার করেন তবে খুব কম সুবিধাজনক এবং আফাইক আপনাকে স্ক্রোলিংয়ের জন্য কীবোর্ডটি ব্যবহার করতে হবে এবং আপনি যদি এটি শুরু করতে ভুলে যান তবে ডিনিটাইটিজিং টার্মক্যাপ থেকে রাখার কোনও উপায় আমার জানা নেই ।Ctaillessless-X


1
+1 আপনার উত্তরটি আমার পোস্ট করার সাথে সাথে উপস্থিত হয়েছিল এবং যদিও আমার কাজ করে তবে আপনারা আরও ভাল।
জুলি পেলেটিয়ার

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

1
+1আমাকে সম্পর্কে শেখানোর জন্য +0। লগফাইলে ঘোরানোর -Fপরিবর্তে আপনি চাইতে পারেন-f
হ্যাগেন ভন ইটজেন

আমার মনে হয় এখানে একের পর এক আছে। tail -n +1আমার জন্য ফাইলের শুরু দেখায় এবং tail -n +2একটি লাইন এড়িয়ে যায়। আমি মনে করি সংখ্যাটি প্রথম প্রদর্শিত লাইনের লাইন নম্বর।
বেন মিলউড 20

1
@ আনহন ধন্যবাদ! এটাই আমার দরকার ঠিক!
ম্যালওয়ারম

37

এটি অর্জনের আরও ভাল উপায় আছে:

less +F <file>

এটি আপনাকে পুরো ফাইলটি দেখাবে, এর সম্পূর্ণ ক্ষমতা রয়েছে lessএবং নতুন ইনপুটটির জন্য অপেক্ষা করবে। আপনি যদি ইনপুটটির জন্য অপেক্ষা করা বন্ধ করতে চান এবং একটি নির্দিষ্ট অংশটি পড়তে চান তবে আপনি এটি দিয়ে থামিয়ে ^Cআবার শুরু করতে পারেন F

দ্য Fকমান্ড সবসময় পাওয়া যায় lessযদি তোমরা যখন একটি ফাইল খোলা থাকার পরিবর্তনের জন্য ঘড়ি করার সিদ্ধান্ত নেন, less, আঘাত Fতে এটি চালু হবে। এটিকে নির্দেশ করার জন্য হায়ারগিল্টেস্টফু এবং ওয়াইল্ডকার্ডকে ধন্যবাদ ।


2
এটি আসলে তুলনায় অনেক ভাল tail। ভকভগক; আমি lessএই জন্য ব্যবহার করার কথা ভাবেন না । অন্যদের জন্য নোট: আপনি কেবল চালাতে পারেন less <file>এবং তারপরে টাইপ করতে পারেন F
ওয়াইল্ডকার্ড 21

3

/ ইউ / অ্যান্থনের উত্তর ছাড়াও, আপনি এর মতো কিছু করতে পারেন:

{ cat filename; tail -0f filename; }

যে -0লেজের বিকল্পটির সমতুল্য -n 0, অর্থ: 0 লাইন অপসারণ করুন। তবে -fনতুন লাইনগুলি প্রদর্শন করবে।

আপনার ধনুর্বন্ধনী প্রয়োজন নেই { } । আমি সেগুলি ব্যবহার করেছি কারণ কখনও কখনও আপনি কোনওভাবে ফাইলড্রিপেক্টর পুনর্নির্দেশ করতে চান। এই ক্ষেত্রে:

{ cat ; tail -0f -; } < /var/log/messages

বেন মিলউড দ্বারা সুপরিচিত: আপনার দৌড়ের অবস্থা থাকতে পারে যেখানে catঅপারেশন শেষ হওয়ার পরে এবং অপারেশন শুরুর মধ্যবর্তী সময়ে ফাইলটি বৃদ্ধি পায় tail। তবে আবার, এটি একটি একাডেমিক সমাধানের জন্য "একাডেমিক" সমস্যা।


3
যদি ফাইলটি catশেষ হয়ে যায় এবং tailশুরু হয় এর মধ্যে বেড়ে যায় , আপনি সেই লাইনগুলি দেখতে পাবেন না। অসম্ভব বড় চুক্তি হওয়া, তবে খাঁটি tailসমাধানটি পছন্দ করার একটি কারণ ।
বেন মিলউড 20

আমি মনে করি { cat; tail -n +0 -f; } < fileরেসটি ঠিক করে দেবে, কারণ লেজ কোনও নতুন ডেটা প্রিন্ট করবে যা catপ্রস্থান এবং tailপ্রারম্ভিকালের মধ্যে প্রদর্শিত হবে । অবশ্যই এটি catঅনর্থক করে তোলে । পুনঃনির্দেশটি কেবল একবারই ঘটে থাকে এবং tailএর স্টিডিন হ'ল ফাইল বর্ণনাকারী যা catইওএফটি ইতিমধ্যে পড়েছিল, তাই এটির বর্তমান অবস্থানটি যেখানে catথামানো হয়েছিল। প্রতিবার প্রতিযোগিতা তৈরি করতে আপনি এটি echo foo >> fileভিতরে রেখে একটি পরীক্ষা করে দেখতে পারেন {}
পিটার কর্ডেস

2

watch কমান্ড আপনার জন্য এটি করা উচিত।

আপনি চেষ্টা করতে পারেন

less +FG 

lessআপনার ফাইলটি স্ক্রোল করার জন্য আপনার কাছে কমান্ড সহ আরও বিকল্প থাকবে কারণ আপনি বলছেন এটি একটি বড় ফাইল।


কম এছাড়াও একটি বর্ধমান ফাইল অনুসরণ করে না।
শাদুর

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