| RZ_DIFF(1) | General Commands Manual | RZ_DIFF(1) |
نام (NAME)
RZ_DIFF —
مقایسه
فایلها و
یافتن
تفاوتهای
باینری.
خلاصه دستور (SYNOPSIS)
rz-diff [OPTIONS] file0
file1
توضیحات (DESCRIPTION)
ابزار rz-diff دو فایل یا برنامه باینری را مقایسه کرده و تفاوتهای میان آنها را برجسته میسازد. این ابزار بر اساس گزینههای بهکاررفته، از مقایسه جنبههای گوناگون مانند بایتهای خام، خطوط متنی، توابع، بخشها (sections)، رشتهها و غیره پشتیبانی میکند.
-A- مقایسه آدرسهای مجازی از file0 با آدرسهای فیزیکی در file1
-a[arch]- مشخص کردن پلاگین معماری مورد استفاده برای تحلیل (مانند x86، arm)
-b[bits]- مشخص کردن اندازه ثباتها (register size) برای معماری انتخابشده (مانند 16، 32، 64)
-B- اجرای دستور 'aaa' هنگام بارگذاری باینری
-C- غیرفعال کردن استفاده از رنگها در خروجی
-d[algo]- محاسبه فاصله ویرایشی (edit distance) میان فایلها با استفاده از الگوریتم انتخابی:
-e[k=v]- تنظیم یک متغیر پیکربندی قابل ارزیابی
-H- فعال کردن حالت بصری هگزادسیمال برای مقایسه فایلها در قالب شانزدهشانزدهی
-h- نمایش پیام راهنما
-i- استفاده از آرگومانهای خط فرمان به جای فایلها (تنها برای -d)
-j- ارائه نتایج مقایسه در قالب JSON
-q- تولید خروجی بیصدا با حداقل اطلاعات
-0[cmd]- ورودی برای file0 در صورت مشخص شدن گزینه -t 'commands'
-1[cmd]- ورودی برای file1 در صورت مشخص شدن گزینه -t 'commands'
-S[WxH]- تنظیم عرض و ارتفاع ترمینال برای حالت بصری
-t[type]- محاسبه
تفاوت میان
دو فایل بر
اساس نوع
مشخصشده:
bytes- مقایسه بایتهای خام در فایلها (تنها برای فایلهای کوچک)
lines- مقایسه فایلهای متنی
functions- مقایسه توابع یافتشده در فایلها
classes- مقایسه کلاسهای یافتشده در فایلها
command- مقایسه خروجی فرمانی که هنگام اجرا روی هر دو فایل بازگردانده میشود. نیاز به -0 <cmd> دارد؛ -1 <cmd> اختیاری است.
entries- مقایسه مدخلهای (entries) یافتشده در فایلها
fields- مقایسه فیلدهای یافتشده در فایلها
graphs- مقایسه ۲ تابع و ارائه خروجی در قالب graphviz/dot. نیاز به -0 <fcnname|offset> دارد؛ -1 <fcn name|offset> اختیاری است.
imports- مقایسه واردات (imports) یافتشده در فایلها
libraries- مقایسه کتابخانههای یافتشده در فایلها
sections- مقایسه بخشهای (sections) یافتشده در فایلها
strings- مقایسه رشتههای یافتشده در فایلها
symbols- مقایسه نمادهای (symbols) یافتشده در فایلها
-T- نمایش اطلاعات برچسب زمانی در خروجی
-V- نمایش اطلاعات نسخه rz-diff
-v- پرگویی بیشتر در خروجی (خروجی stderr)
رنگهای پالت را میتوان با افزودن خطوط زیر درون فایل $HOME/.rizinrc تغییر داد:
ec diff.unknown blue- رنگ آفست
ec diff.match green- رنگ مطابقتها
ec diff.unmatch red- رنگ عدممطابقتها
مثالها (EXAMPLES)
مقایسه دو فایل باینری با استفاده از تنظیمات پیشفرض:
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
همچنین ببینید (SEE ALSO)
rizin(1), rz-find(1), rz-hash(1), rz-bin(1), rz-asm(1), rz-gg(1), rz-run(1), rz-ax(1),
نویسندگان (AUTHORS)
pancake <pancake@nopcode.org>
byteninjaa0
| August 25, 2023 |