এটি কোনও ফাইলের শেষে একটি অতিরিক্ত নিউলাইন যুক্ত করার বিষয়ে নয়, এটি সেখানে থাকা নতুন লাইনটি সরিয়ে না দেওয়ার বিষয়ে।
ইউনিক্সের অধীনে একটি পাঠ্য ফাইলটিতে কয়েকটি লাইন থাকে, যার প্রতিটিটি একটি নতুন লাইনের অক্ষর ( \n
) দিয়ে শেষ হয় । একটি ফাইল যা খালি নয় এবং একটি নতুন লাইনের সাথে শেষ হয় না তাই কোনও পাঠ্য ফাইল নয়।
পাঠ্য ফাইলগুলিতে অপারেশন করার কথা যে ইউটিলিটিগুলি নতুন লাইনের সাথে শেষ হয় না এমন ফাইলগুলির সাথে ভালভাবে মোকাবেলা করতে পারে না; Unতিহাসিক ইউনিক্স ইউটিলিটিগুলি শেষ নিউলাইনের পরে পাঠ্যটিকে উপেক্ষা করতে পারে, উদাহরণস্বরূপ। জিএনইউ ইউটিলিটিগুলির নন-টেক্সট ফাইলগুলির সাথে শালীন আচরণ করার নীতি রয়েছে এবং একই সাথে অন্যান্য বেশিরভাগ আধুনিক ইউটিলিটিগুলিও আপনাকে চূড়ান্ত নিউলাইন মিস করা ফাইলগুলির সাথে এখনও অদ্ভুত আচরণের মুখোমুখি হতে পারে ¹
জিএনইউ পার্থক্যের সাথে, তুলনা করা ফাইলগুলির মধ্যে একটি যদি নতুন লাইনের সাথে শেষ হয় তবে অন্যটি নয়, তবে সেই সত্যটি লক্ষ করা সতর্কতা অবলম্বন করে। যেহেতু পার্থক্য লাইন-ভিত্তিক, এটি ফাইলের একটির জন্য একটি নতুন লাইন সংরক্ষণ করে অন্যের জন্য নয়, এটি চিহ্নিত করতে পারে না - নিউলাইনগুলি পৃথক ফাইলের প্রতিটি লাইন কোথায় শুরু হয় এবং শেষ হয় তা নির্দেশ করার জন্য প্রয়োজনীয় । সুতরাং \ No newline at end of file
পৃথক এই বিশেষ পাঠ্যটি এমন কোনও ফাইলের পার্থক্য করতে ব্যবহার করে যা কোনও ফাইল থেকে নতুন লাইনে শেষ হয় না।
উপায় দ্বারা, একটি সি প্রসঙ্গে, একটি উত্স ফাইল একইভাবে লাইন একটি সিরিজ নিয়ে গঠিত। আরও স্পষ্টভাবে, একটি অনুবাদ ইউনিট একটি বাস্তবায়ন সংজ্ঞায়িত লাইনের একটি ধারা হিসাবে সংজ্ঞায়িত করা হয়, যার প্রত্যেকটি অবশ্যই একটি নতুন লাইন চরিত্রের সাথে শেষ হওয়া উচিত ( n1256 §5.1.1.1)। ইউনিক্স সিস্টেমে ম্যাপিংটি সোজা is ডস এবং উইন্ডোজে, প্রতিটি সিআর এলএফ সিকোয়েন্স ( \r\n
) একটি নতুন লাইনে ম্যাপ করা হয় ( \n
; এই ওএসগুলিতে পাঠ্য হিসাবে খোলা কোনও ফাইল পড়ার সময় এটি সর্বদা ঘটে)। সেখানে কয়েকটি ওএস আছে যাতে একটি নতুন লাইন চরিত্র নেই, তবে পরিবর্তে স্থির- বা পরিবর্তনশীল-আকারের রেকর্ড রয়েছে; এই সিস্টেমে ফাইলগুলি থেকে সি উত্সে ম্যাপিংয়ের মাধ্যমে a\n
প্রতিটি রেকর্ড শেষে। যদিও এটি ইউনিক্সের সাথে সরাসরি প্রাসঙ্গিক নয়, এর অর্থ হ'ল আপনি যদি রেকর্ড-ভিত্তিক পাঠ্য ফাইল সহ কোনও সিস্টেমে চূড়ান্ত নিউলাইন অনুপস্থিত এমন কোনও সি উত্স ফাইলটি অনুলিপি করেন তবে তা আবার অনুলিপি করুন, আপনি হয় অসম্পূর্ণতা সহ শেষ করবেন প্রারম্ভিক রূপান্তরকালে সর্বশেষ লাইনটি কেটে গেছে বা বিপরীত রূপান্তরকালে একটি অতিরিক্ত নতুন লাইন এটিতে লাগিয়েছে।
¹
উদাহরণ: জিএনইউ সাজানোর আউটপুট সর্বদা একটি নতুন লাইনের সাথে শেষ হয়। সুতরাং যদি ফাইলটির foo
চূড়ান্ত নিউলাইনটি অনুপস্থিত থাকে তবে আপনি এটির sort foo | wc -c
চেয়ে আরও একটি চরিত্রের প্রতিবেদন পাবেন cat foo | wc -c
।