md5sum কমান্ড বাইনারি এবং পাঠ্য মোড


13

GNU md5sumকমান্ডের দুটি মোড রয়েছে: বাইনারি মোড এবং পাঠ্য মোড। আমার ধারণা পার্থক্যটি কেবলমাত্র নতুন লাইনের চরিত্রগুলি পরিচালনা করা হয় তার উপর? আমি কি সঠিক?

জিএনইউ / লিনাক্সে, দুটি মোড সবসময় একই ফলাফল তৈরি করে, তাই শুধুমাত্র ফাইলের নামের আগে ব্যবহৃত পতাকা ( বা ) ব্যবহার করা -bএবং -tবিকল্পগুলির একমাত্র ব্যবহার ?*

কোন পরিস্থিতিতে মোডগুলি বিভিন্ন ফলাফল আনতে পারে? উইন্ডোজ / ম্যাকোস সিস্টেমে? (এই প্ল্যাটফর্মগুলির জন্য সংস্করণ উপলব্ধ?)

উত্তর:


11

জিএনইউ / লিনাক্সে, দুটি মোড সর্বদা একই ফলাফল দেয়

হ্যাঁ, স্পষ্টভাবে। থেকে man md5sum:

দ্রষ্টব্য: [sic] GNU সিস্টেমে বাইনারি এবং পাঠ্য মোড বিকল্পের মধ্যে কোনও পার্থক্য নেই।

এটি md5sumGNU কোর্টিলস 8.21 সহ জাহাজগুলি প্রয়োগ করে; আমি দেখতে পেয়েছি যে একটি পুরানো সংস্করণ (8.12) এ এই নোটিশটি নেই তবে আমি মনে করি এটি যাইহোক সত্য হবে।

যদিও এএএএফআইটিটি md5sumআনুষ্ঠানিকভাবে মানসম্মত নয় (যেমন, পসিক্স দ্বারা), এটি বিভিন্ন প্ল্যাটফর্মে বিভিন্ন বাস্তবায়নের ক্ষেত্রে উপলব্ধ এবং সিস্টেমগুলিতে সহজেই ব্যবহারের সুবিধার্থে এগুলি একে অপরের সাথে সামঞ্জস্য করার কিছুটা প্রচেষ্টা অবশ্যই রয়েছে effort

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

এটি কী করে তা বিবেচনা করে কোনও লিখিতকরণ md5sumযে কোনও অপারেটিং সিস্টেমকে সংকলন এবং কাজ করবে তা সম্পূর্ণভাবে সম্ভব হবে। আমি এটি জিএনইউ কোর্টিলস সংস্করণের সত্য বলে দাবি করছি না, তবে পূর্বে উল্লিখিত উচ্চ স্তরের ফাইল স্ট্রিম ফাংশনগুলির মধ্যে একটি fopen(), যা দ্বি-দ্বি bহিসাবে "খোলা হচ্ছে" তা বোঝাতে কোনও ফাইল খোলার ক্ষেত্রে ব্যবহৃত একটি সুইচ অন্তর্ভুক্ত করার জন্য আইএসও সি দ্বারা বাধ্যতামূলক করা হয়েছে ফাইল "। সিস্টেমটির যার অর্থ বা প্রয়োজন হতে পারে সেটি স্ট্যান্ডার্ড দ্বারা নির্ধারিত নয় , এটি কেবলমাত্র বিদ্যমান হওয়া প্রয়োজন যাতে এটি সিস্টেমে এটি ব্যবহার করতে পারে যেখানে এর কোনও কারণ ( কোনও ) কারণ থাকতে পারে ।

লিনাক্স / পসিক্স / * নিক্স-স্টাইল অপারেটিং সিস্টেমগুলিতে এরকম কোনও কারণ নেই, তাই স্যুইচ কিছুই করে না। ফোপেন () এর জন্য পসিক্স স্পেস (আইএসও সি-র একটি সুপারসেট ) থেকে :

'বি' অক্ষরটির কোনও প্রভাব থাকবে না, তবে আইএসও সি স্ট্যান্ডার্ড কনফারেন্সের জন্য অনুমোদিত।

সুতরাং, সম্পূর্ণ পোর্টেবল md5sumপ্রয়োগের ফলে আইএসও উচ্চ স্তরের ফাইল স্ট্রিম ফাংশনগুলি ব্যবহার করা যেতে পারে, যেহেতু আইএসও সি-তে ফাইল অ্যাক্সেসের জন্য অন্য কোনও পদ্ধতি নেই (বেশিরভাগ প্ল্যাটফর্ম, যার মধ্যে পসিক্স অভিযোগ রয়েছে, তাদের নিজস্ব নিম্ন স্তরের পদ্ধতিও রয়েছে, তবে এগুলি ব্যবহার করে কারণ তারা আইএসও সি নয় সেই পোর্টেবল হতে), এবং এটি বাস্তবায়ন করা উচিত -bএবং -tপতাকা যোগ করতে অথবা না যোগ করার জন্য bবিকল্প fopen()যখন এটি ফাইল পড়া হয়। যে সিস্টেমে এটি অর্থহীন, সেখানে কোনও পার্থক্য তৈরি হবে না।

আবার, আমি বলছি না যে জিএনইউ এর এমডি 5সামটি পুরোপুরি বহনযোগ্য উপায়ে লেখা হয়েছে বা এটি থেকে উদ্ভূত হয়েছে, তবে স্পষ্টতই এটি এটির সাথে চালিত হওয়ার সাথে সাথে এটি পরিচালনা করার চেষ্টা করছে that মনে রাখবেন যে পতাকা রয়েছে যা কিছুই না করে পতাকা না থাকা সমান নয় - প্রাক্তন ক্ষেত্রে এটি ঠিক আছে তবে কিছুই করবে না বলে উল্লেখ করা হয়েছে, যদিও পরবর্তী ক্ষেত্রে এটি ব্যবহার করা ত্রুটি হতে পারে বা অনির্ধারিত আচরণের দিকে পরিচালিত করতে পারে


1
অনর্থক হলে এই বিকল্পগুলি যুক্ত করা হবে কেন?
হিমশীতল শিখা

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