একটি পাঠ্য ফাইল খুলুন এবং এটিকে নিজেই আপডেট করতে দিন


20

আমি কীভাবে কোনও পাঠ্য ফাইল খুলতে পারি এবং এটি নিজে আপডেট করতে পারি? topকাজ করার মতোই ।

আমি একটি লগ ফাইল খুলতে এবং এটিকে ফ্লাইতে নিজেই আপডেট দেখতে চাই।

আমি সবেমাত্র চেষ্টা করেছি:

$ tail error.log

তবে ঠিক বুঝতে পেরেছি যে এটি আপনাকে লগ ফাইলের লাইনগুলি প্রদর্শন করে।

আমি RHEL 5.10 ব্যবহার করছি


4
ব্যবহার করুনtail -f error.log
গ্যারেথTheRed

আহ, তাই tailএটি ব্যবহার করার সঠিক উপায়? বাহ, আমি সত্যিই ভাবিনি যে আমি এটি ব্যবহার করতে পারি। আমি অনেক দীর্ঘ অভিব্যক্তি প্রত্যাশা ছিল।
কেভডোগ 777

1
এফওয়াইআই, যদিও লেজটি কাজের জন্য হাতিয়ার, আক্ষরিক অর্থে open a text file and let it update itselfএটি অর্জন করা যেতে পারে watch cat filename
চথুলহু

1
আপনার পছন্দ watch cat filenameবা অনুরূপ watch filenameকার্যকর করার চেষ্টা করবে filename
টেরডন

@terdon হ্যাঁ।
চথুলহু

উত্তর:


29

আপনি tail -f error.log(থেকে man tail) সন্ধান করছেন:

   -f, --follow[={name|descriptor}]
          output appended data as the file grows; -f, --follow, and --fol‐
          low=descriptor are equivalent

এটি আপনাকে একটি ফাইল দেখতে এবং তাতে কোনও পরিবর্তন দেখতে দেয়।


এবং এটি অনেক সংস্থান ব্যবহার করবে না?
কেভডোগ 777

1
@ কেভডোগ 77 আসলেই না। সম্ভবত, এটি আপডেট করার জন্য প্রতি কয়েক সেকেন্ডের মধ্যে ফাইলটি পুনরায় খোলে। আপনি যা চান তা করার এটি সর্বোত্তম উপায়।
টেরডন

1
@ স্টারডন, এটি কেবল পুনরায় খোলে (আবার খোলা হতে পারে) দিয়ে -F। সঙ্গে -fএটা ঠিক প্রতি মাসের দ্বিতীয় পড়ে। এটি একটি মত while cat; do sleep 1; done < fileinotailআরও প্রতিক্রিয়াশীল লেজের জন্য লিনাক্সে দেখুন ( inotifyফাইলটি কখন সংশোধন করা হচ্ছে তা জানতে ব্যবহৃত হয়)।
স্টাফেন চেজেলাস

@ স্টাফেনচাজেলাস: আমি নিশ্চিত যে এটি এর চেয়ে অনেক বেশি দক্ষ। আমি বাজি দেব যে এটি নির্বাচন করুন বা পোল ব্যবহার করুন এটি দেখতে যে এফডিটি পাঠযোগ্য কিনা এবং তারপরে এফডিতে ডেটা উপলব্ধ না হওয়া পর্যন্ত ঘুমান sleep যদিও আমি সম্পূর্ণ ভুল হতে পারি।
মার্টিন ইয়র্ক

1
@ লোকিআস্টারি, আপনি আরও বেশি দক্ষ হতে পারবেন না যে readপ্রতি সেকেন্ডে একটি সিস্টেম কল করে। একটি "পঠন" selectবা pollএকটি নিয়মিত ফাইল সর্বদা সত্য ফিরে আসায় যেহেতু read()নিয়মিত ফাইলটিতে কখনই ব্লক হয় না, কাজ করে না। এই বলে যে, জিএনইউ tailএখন inotifyলিনাক্সে ব্যবহার করে, তাই inotailআর প্রয়োজন হয় না।
স্টাফেন চেজেলাস

20

স্ক্রোলব্যাক এবং অনুসন্ধানের জন্য "লেজ" এর পরিবর্তে "কম" ব্যবহার করুন

আপনি ব্যবহার করতে পারেন tail -f error.logভালো বা: tail -F error.log

তবে আপনি যদি ফাইলে স্ক্রোল করতে চান তবে এটি খুব কার্যকর নয়।

সঙ্গে

less +F error.log

আপনি ফাংশন পেতে tail -f,
কিন্তু করতে সাময়িক বিরতি দিয়ে নতুন ইনপুট পাঠ Ctrl+ + C

তারপরে, আপনি স্বাভাবিক lessমোডে রয়েছেন,
যেখানে আপনি / এছাড়াও কী কী মিস করেছেন তা দেখতে আপনি আবার স্ক্রোল করতে পারেন , আপনি / ব্যবহার করে মোড়ানো না হয়ে লম্বা লগ ফাইল লাইন পড়তে পারেনUpDown
LeftRight

অনুসন্ধান করুন এবং কেবল মিলিত লাইনগুলি দেখান

এছাড়াও আপনি সঙ্গে রেগুলার এক্সপ্রেশনের জন্য অনুসন্ধান করতে পারেন /, ?অনগ্রসর জন্য, nএবং Nপরের জন্য / পূর্ববর্তী।

লগ ফাইলের জন্য অত্যন্ত আকর্ষণীয় যে আপনার পারে লুকাতে সঙ্গে একটি অনুসন্ধান সমস্ত অ-ম্যাচিং লাইন &, ফিল্টারিং শুধুমাত্র ম্যাচ বাইরে।

কমান্ড লাইনের কী

সঙ্গে Fভেতরে less, আপনি অবিরতtail -f -একটি মোড। কমান্ড লাইনে মানে হলো "প্রেস এই কী সরাসরি কম শুরু করার পরে"।
+less +F

সুতরাং আমরা Fপ্রারম্ভকালে কী-টিপস ব্যবহার করেছি , যা বর্ণিত হয়েছে:

F  Scroll  forward,  and  keep trying to read when the end of file is
   reached.  Normally this command would be used when already at  the
   end  of the file.  It is a way to monitor the tail of a file which
   is growing while it is being viewed.  (The behavior is similar  to
   the "tail -f" command.)

multitailআপনার যদি একাধিক লগ ফাইল দেখার প্রয়োজন হয় তাও দেখুন ।


ধন্যবাদ, তবে tail -f error.logআমার যা প্রয়োজন তা নিখুঁত। লগ ফাইলটি প্রতি ঘন্টা কেবল আপডেট হয়, তাই আমার ব্যবহারের জন্য যথেষ্ট :-)
কেভডোগ 777

1
এটি পরবর্তী বারের জন্য মনে রাখার বিষয়টি নিশ্চিত করুন;)
ভলকার সিগেল

mostএছাড়াও একটি tail -fমোড আছে F
স্টাফেন চেজেলাস

@ স্টাফেন চ্যাজেলাস ঠিক আছে, ধন্যবাদ! হুমম ... আমার মনে আছে mostকিছুক্ষণ আগে কেউ উল্লেখ করার জন্য আমাকে ধন্যবাদ জানিয়েছিল ... এবং আমি এটি ভুলে গেছি।
ভোলকার সিগেল

@ স্টাফেনচাজলাস তবে তারপরে, কেবল মিলে যাওয়া লাইনগুলি দেখানোর mostজন্য কম ফিল্টার বৈশিষ্ট্য নেই বলে মনে হচ্ছে &? সাধারণত লগ ফাইলগুলিতে একটি দরকারী বৈশিষ্ট্য।
ভোলকার সিগেল

5

এর -fসাথে বিকল্পটি ব্যবহার করুন tail:

-f, --ফলো [= {নাম | বর্ণনাকারী}] আউটপুট ফাইলের বাড়ার সাথে যুক্ত ডেটা; -f, --ফলো এবং --ফলো = বর্ণনাকারীর সমতুল্য

বা Fভিতরে কমান্ড ব্যবহার করুন less:

   F      Scroll forward, and keep trying to read when the end of file is reached.  Normally this command would be used when already at the end of the file.  It is a way to mon‐
          itor the tail of a file which is growing while it is being viewed.  (The behavior is similar to the "tail -f" command.)

এই উত্তরে নতুন কী?
ব্লুফগি

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