একটি ব্যাচ ফাইলের শুরুতে অদ্ভুত অক্ষর (´╗┐) [সদৃশ]


30

আমি উইন্ডোজে ব্যাচ ফাইলগুলির সাথে নোটপ্যাড এবং নোটপ্যাড ++ উভয়ই ব্যবহার করছি। আমি যখন ব্যাচ ফাইলগুলি চালিত করি যা সমস্তগুলি দিয়ে শুরু হয় @echo off, আমি প্রথম লাইনটি দেখতে পাই (যখন দুটি পৃথক মেশিনে চালিত হয়) পড়া হয় ´╗┐@echo off, এবং তারপরে নীচের সমস্ত REM লাইনগুলিও উপস্থিত হয়।

আমি নোটপ্যাড ++ এ এনকোডিং পরিবর্তন করার চেষ্টা করেছি, তবে এটি দাবি করেছে যে তারা ইতিমধ্যে ইউটিএফ -8 এনকোডিং-এ রয়েছে, যা সঠিক বলে মনে হচ্ছে।

এই ফাইলগুলি সঠিকভাবে চালিত হওয়ার জন্য আমার কী করা দরকার?


@ ফ্লু আমার প্রশ্নটি নোটপ্যাড ++ সম্পর্কে বিশেষভাবে রয়েছে
কানাডিয়ান লুক পুনরায় পোস্ট করুন মনিকা

নোট করুন যে নিয়মিত নোটপ্যাড, ইউটিএফ 8 এর সাথে সঞ্চয় করার সময়, বিওএম ছাড়াই সংরক্ষণের অনুমতি দেয় না এবং এই অক্ষরগুলি যুক্ত করবে।
dmcontador

উত্তর:


26

এটি ইউটিএফ -8 এর জন্য বাইট অর্ডার চিহ্নের ডস এএসসিআইআই এনকোডিংয়ের মতো দেখাচ্ছে (0xEF 0xBB 0xBF): http://en.wikedia.org/wiki/Byte_order_mark

নোটপ্যাডে ++ এটিকে "ইউটিএফ -8 বিএমএএমবিহীন" বা সরল ASCII হিসাবে এনকোড করার চেষ্টা করুন। আমি মনে করি ইউটিএফ -8 এর জন্য বিওএমের ব্যবহার এই কারণেই নিরুৎসাহিত করা হয়েছে, এটি ASCII এর সাথে সামনের দিকে সামঞ্জস্যপূর্ণ নয়।


2
একেবারে ঠিক, 'ডস এএসসিআইআই' ব্যতীত ডস কোড পৃষ্ঠা 850, পাইথনের পরীক্ষায় দেখানো হয়েছে:>>> print u'\ufeff'.encode('utf8').decode('cp850') ´╗┐
ডেল্টাব

@ দালতাব আহ, ভাল সন্ধান। আমি নিশ্চিত ছিলাম না যে এনকোডিংটি বিশেষত বলা হয়েছিল ╗┐, এমএস-ডস 5 / উইন্ডোজ 3.11 এর দিন থেকে আমি লাইন-আর্ট চরিত্রগুলি দেখিনি । সামঞ্জস্যের জন্য আধুনিক উইন্ডোজকে অবশ্যই সেই এনকোডিং সহ ব্যাচ ফাইলগুলি চালানো উচিত?
বাওচন

1
একটি নতুন পাঠ্য ফাইল তৈরি করতে ভিজ্যুয়াল স্টুডিও ব্যবহার করার সময় আমি এতে ছুটে এসেছি।
স্যাম গোল্ডবার্গ

9

দেখা যাচ্ছে এটি সঠিকভাবে কাজ করতে এএনএসআই এনকোডিং এ সেট করা দরকার । এটি সেট করতে, আমি এএনএসআইতে এনকোডিং -> এনকোড বেছে নিয়েছি ।

এটি বের করার জন্য, আমি কমান্ড লাইন থেকে একটি ব্যাচ ফাইল তৈরি করার চেষ্টা করেছি।

echo @echo off > batch.bat
echo REM Some comment... >> batch.bat
echo echo Hello world! >> batch.bat

আমি তখন এই ফাইলটি নোটপ্যাড ++, খোলা, এবং নিম্ন ডান দিকের কোণায় অবস্থিত, যা পড়েন সেই এনকোডিং চেক করা হল UTF-8 যেমন ANSI । আমি জানি না কেন এটি শেষ বিটটি যোগ করে, তবে মনে হয় এটি এখন কাজ করে।


এএনএসআই আসলে কোনও এনকোডিং নয়। সম্ভবত এটি আপনার উইন্ডোজ সিস্টেমের ডিফল্ট কোড পৃষ্ঠাটিকে বোঝায় । এটি কনফিগারেশনের উপর নির্ভর করে এক সিস্টেম থেকে অন্য সিস্টেমে পরিবর্তিত হবে।
কোডি গ্রে

এটি সঠিক নয়। বিওএম হ'ল একটি অক্ষর সেট এনকোডিং আর্টিফ্যাক্ট।
থোরবজর্ন রাভন অ্যান্ডারসন

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