RZ_DIFF(1) General Commands Manual RZ_DIFF(1)

RZ_DIFF — مقایسه فایل‌ها و یافتن تفاوت‌های باینری.

rz-diff [OPTIONS] file0 file1

ابزار rz-diff دو فایل یا برنامه باینری را مقایسه کرده و تفاوت‌های میان آن‌ها را برجسته می‌سازد. این ابزار بر اساس گزینه‌های به‌کاررفته، از مقایسه جنبه‌های گوناگون مانند بایت‌های خام، خطوط متنی، توابع، بخش‌ها (sections)، رشته‌ها و غیره پشتیبانی می‌کند.

مقایسه آدرس‌های مجازی از file0 با آدرس‌های فیزیکی در file1
[arch]
مشخص کردن پلاگین معماری مورد استفاده برای تحلیل (مانند x86، arm)
[bits]
مشخص کردن اندازه ثبات‌ها (register size) برای معماری انتخاب‌شده (مانند 16، 32، 64)
اجرای دستور 'aaa' هنگام بارگذاری باینری
غیرفعال کردن استفاده از رنگ‌ها در خروجی
[algo]
محاسبه فاصله ویرایشی (edit distance) میان فایل‌ها با استفاده از الگوریتم انتخابی:
الگوریتم O(ND) یوجین دبلیو. مایرز (Eugene W. Myers) (بدون جایگزینی)
الگوریتم O(N^2) لون‌اشتاین (Levenshtein) (با جایگزینی)
مقایسه درهم‌سازی تکه‌ای مبتنی بر متن (Context triggered piecewise hashing)
[k=v]
تنظیم یک متغیر پیکربندی قابل ارزیابی
فعال کردن حالت بصری هگزادسیمال برای مقایسه فایل‌ها در قالب شانزده‌شانزدهی
نمایش پیام راهنما
استفاده از آرگومان‌های خط فرمان به جای فایل‌ها (تنها برای ‎-d)
ارائه نتایج مقایسه در قالب JSON
تولید خروجی بی‌صدا با حداقل اطلاعات
[cmd]
ورودی برای file0 در صورت مشخص شدن گزینه ‎-t 'commands'
[cmd]
ورودی برای file1 در صورت مشخص شدن گزینه ‎-t 'commands'
[WxH]
تنظیم عرض و ارتفاع ترمینال برای حالت بصری
[type]
محاسبه تفاوت میان دو فایل بر اساس نوع مشخص‌شده:
مقایسه بایت‌های خام در فایل‌ها (تنها برای فایل‌های کوچک)
مقایسه فایل‌های متنی
مقایسه توابع یافت‌شده در فایل‌ها
مقایسه کلاس‌های یافت‌شده در فایل‌ها
مقایسه خروجی فرمانی که هنگام اجرا روی هر دو فایل بازگردانده می‌شود. نیاز به ‎-0 <cmd>‎ دارد؛ ‎-1 <cmd>‎ اختیاری است.
مقایسه مدخل‌های (entries) یافت‌شده در فایل‌ها
مقایسه فیلدهای یافت‌شده در فایل‌ها
مقایسه ۲ تابع و ارائه خروجی در قالب graphviz/dot. نیاز به ‎-0 <fcnname|offset>‎ دارد؛ ‎-1 <fcn name|offset>‎ اختیاری است.
مقایسه واردات (imports) یافت‌شده در فایل‌ها
مقایسه کتابخانه‌های یافت‌شده در فایل‌ها
مقایسه بخش‌های (sections) یافت‌شده در فایل‌ها
مقایسه رشته‌های یافت‌شده در فایل‌ها
مقایسه نمادهای (symbols) یافت‌شده در فایل‌ها
نمایش اطلاعات برچسب زمانی در خروجی
نمایش اطلاعات نسخه rz-diff
پرگویی بیشتر در خروجی (خروجی stderr)

رنگ‌های پالت را می‌توان با افزودن خطوط زیر درون فایل $HOME/.rizinrc تغییر داد:

رنگ آفست
رنگ مطابقت‌ها
رنگ عدم‌مطابقت‌ها

مقایسه دو فایل باینری با استفاده از تنظیمات پیش‌فرض:

rz-diff file1.bin file2.bin

مقایسه دو فایل متنی و نمایش خروجی در قالب JSON:

rz-diff -j -t lines file1.txt file2.txt

مقایسه دو تابع از یک پلاگین معماری:

rz-diff -t graphs -0 function1 -1 function2 binary1 binary2

rizin(1), rz-find(1), rz-hash(1), rz-bin(1), rz-asm(1), rz-gg(1), rz-run(1), rz-ax(1),

pancake <pancake@nopcode.org>
byteninjaa0

August 25, 2023