ভিমের সাথে পাঠ্য ফাইল সম্পাদনা করা লেজ-এফ আপডেট করে না


17

আমি কল tail -f a.txtকরা কোনও ফাইলে আপডেট দেখতে ব্যবহার করছি a.txt

আমি যদি ls -a >> a.txtদ্বিতীয় ভার্চুয়াল কনসোলের মতো কিছু ব্যবহার করে ফাইলটি আপডেট করি তবে পরিবর্তনগুলি প্রথমটিতে রিয়েল-টাইমে প্রদর্শিত হবে।

আমি যদি দ্বিতীয় ভার্চুয়াল কনসোলে ভিম ব্যবহার করে ফাইল আপডেট করি তবে পরিবর্তনগুলি প্রথমটিতে প্রদর্শিত হবে না।

অগত্যা আমি এটি উইন্ডোতে একটি আপডেট ট্রিগার আশা করি না - তবে কেন এই আপডেটটি কমান্ডটি চালাচ্ছে টার্মিনালটি সঠিকভাবে নয় tail -f?


5
tail -fসংযোজনগুলির জন্য চেক tail -Fফাইলের নামের জন্য চেক।
ট্রিগার করুন

উত্তর:


31

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

আপনি ব্যবহার tailকরে ফাইলের নাম (ফাইলের পরিবর্তে) অনুসরণ করতে পারেন :

tail -F yourfile  

উপরের কেসটি নোট করুন F


1
tail -Fকাজ করে! কনসোলটি এখন "a.txt প্রতিস্থাপন করা হয়েছে: নিম্নলিখিত নতুন ফাইলের শেষে" এবং সেই অনুযায়ী আপডেটের মতো একটি বার্তা প্রদর্শন করছে। ধন্যবাদ!
অ্যালেক্স

8

আমার বোধগম্যতা হ'ল সাধারণত সম্পাদনা করার সময় vimআপনি ফাইলটির একটি অনুলিপি সম্পাদনা করছেন, যা আপনি ডিস্কে আপনার পরিবর্তনগুলি লেখার সময় স্থানটিতে স্থানান্তরিত হয়। যেহেতু unlinkআসলটি তৈরি করে এবং moveনতুন স্থানে প্রবেশ করে এটি ঘটে, tailতাই মূল ফাইলটিতে নতুন পরিবর্তন দেখা যায় না।

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