লিনাক্সে বিডিফ (1) আছে কি?


9

নেই bdiff(1)সোলারিস কমান্ড, যা আপনাকে অনুমতি দেয় diff(1)আপনার র্যাম আকার (চেয়ে বড় আকারের সাথে ফাইল http://docs.oracle.com/cd/E19683-01/806-7612/files-23/index.html )।

লিনাক্সে কি এরকম কিছু আছে? আমি গুগল করার চেষ্টা করেছি কিন্তু bdiffউবুন্টুতে কোন প্যাকেজ রয়েছে তা পাই না ।



সম্ভাব্য প্রতিলিপির: unix.stackexchange.com/questions/2150/...
SLM

উত্তর:


13

বিডিফ লিনাক্সে উপস্থিত রয়েছে বলে মনে হয় (অন্তত হেরলুম সরঞ্জামচেষ্টার অংশ হিসাবে )।

পরিবর্তন

আমি সম্ভবত এই সুইচটির সাথে নিয়মিত পুরানো ডিফ ব্যবহার করব:

diff --speed-large-files bigfileA bigfileB

কেন এটি কাজ করে না?

@ ইভানটিটেলম্যানের মন্তব্য দেখুন, --speed-large-filesফাইলগুলিকে কীভাবে মেমরিতে লোড করা হয় তা প্রভাবিত করে না।

নিম্নলিখিত কমান্ডটি ব্যবহার করে কাজ না করার বিষয়ে প্রদর্শন / নিশ্চিত করা যেতে পারে:

fallocate -l 10G testa; fallocate -l 10G testb && \
        diff --speed-large-files -a testa testb

bsdiff

এটি নিশ্চিত করা শক্ত কিন্তু আমি একটি সরঞ্জাম পেয়েছি bsdiffযা থেকে প্রাপ্ত bdiff। আমি নিশ্চিত করেছি যে এই সরঞ্জামটি উবুন্টুতে রয়েছে, সহজভাবে apt-get install bsdiff

কেন এটি কাজ করতে পারে?

আবার মন্তব্যে @ ইভানটিটেলম্যানকে ধন্যবাদ, উপরেরটি bsdiffবাইনারি ফাইলগুলির জন্য একটি পৃথক সরঞ্জাম। bsdiffএটি একটি বাইনারি ডিফ সরঞ্জাম এবং বড় ফাইলগুলির সাথে ডিল করতে পারে। এটা ঠিক কত বড় তা অস্পষ্ট। কোনও থ্রেডের নীচের লিঙ্কগুলি দেখুন যা এটির ব্যবহারের বিষয়ে আলোচনা করে।

rdiff

আমি মনে করি আপনি এটি করতে rdiff ও ব্যবহার করতে পারেন। আরডিফ খুব বড় ফাইলগুলির সাথে ডিল করতে সক্ষম।

  1. একটি ফাইলের স্বাক্ষর তৈরি করুন:

    rdiff signature A sigs.txt
    
  2. ব-দ্বীপ তৈরির জন্য উত্পন্ন স্বাক্ষর ফাইল sigs.txt এবং অন্যান্য বড় ফাইল বি ব্যবহার করুন:

    rdiff delta sigs.txt B deltaAB.txt
    
  3. ডেল্টায় আপনার কাছে বি বি ফাইল পুনরায় তৈরি করার জন্য প্রয়োজনীয় সমস্ত তথ্য রয়েছে যখন আপনার কাছে কেবল এ এবং ডেল্টা ফাইল ডেল্টাএবি.এসটিএসটি রয়েছে।

    বি পুনরায় তৈরি করতে, চালান:

    rdiff patch A deltaAB.txt B
    

কেন এটি কাজ করে?

আমি এই ব্লগ পোস্টটির শিরোনাম পেয়েছি: জিএনইউ ডিফের যখন মেমরির বাইরে চলে যায় তখন একটি আরও ভাল পার্থক্য বা কী করবেন (" ডিফার : মেমরি ক্লান্ত") , যা রিপোর্ট করেছে যে 4.5 জিবি ফাইলের একটি আরডিফ কেবল ~ 66 এমবি র‌্যাম খায়।

lfhex

lfhex হেক্স, অক্টাল, বাইনারি, বা এসসিআই পাঠ্যে ফাইলগুলি দেখতে এবং সম্পাদনা করার জন্য একটি অ্যাপ্লিকেশন। Lfhex এর প্রধান শক্তি হ'ল সিস্টেম মেমোরির চেয়ে অনেক বড় ফাইলগুলির সাথে কাজ করার ক্ষমতা। এটি তবে একটি জিইউআই সরঞ্জাম।

স্ক্রিনশট

                  ss of lfhex]! [ss of lfhex

তথ্যসূত্র


যদিও এটি সর্বদা নথিভুক্ত করা হয় না, তবে জিএনইউ ডিফ আপনাকে এর -Hপ্রতিশব্দ হিসাবে ব্যবহার করতে দেয় --speed-large-files

2
bsdiffএকটি বাইনারি ডিফ সরঞ্জাম, কোনও বড়-ফাইলের ডিফ সরঞ্জাম নয়।

3
দুর্ভাগ্যক্রমে, দেখে মনে হচ্ছে যে --speed-large-filesপতাকাটি জিএনইউ ডিফের মাধ্যমে মেমরিতে ফাইল লোড করে affect fallocate -l 10G testa; fallocate -l 10G testb && diff --speed-large-files -a testa testbএটি নিশ্চিত করতে দৌড়াতে চেষ্টা করুন । (বা উত্স কোডটি একবার দেখুন))

2
আমি তৈরী করতে পরিচালিত bdiffপ্রতিস্থাপন পর heirloom Toolchest থেকে /sbin/shদ্বারা /bin/shফাইল তৈরী হবে। এখন যখন আমি এটি জায়গায় চালিত করার চেষ্টা করি তখন আমি পাই bdiff: Can not execute '/usr/5bin/diff'। দুঃখিত, আমি এর সাথে কিছু ইনস্টল করতে চাই না /usr/5bin/। এটি কোনও কার্যকর সমাধান নয়। এখানে উল্লিখিত অন্যান্য বিকল্পগুলি আমার পক্ষে কাজ করে না কারণ আমি পাঠ্য হিসাবে পার্থক্যগুলিকে চোখের সামনে দেখতে চাই।
খ্রিস্টান পাইটস

1
পিএস: আশ্চর্যজনকভাবে, lfhex -c file1 file2উভয় পেনের জন্য ভিউ -> সম্পাদনা বেস -> এএসসিআইআই সেট করার পরে আমার পক্ষে ভাল কাজ করে।
খ্রিস্টান পাইটস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.