RAFIND2(1) General Commands Manual RAFIND2(1)

rafind2 — جستجوی پیشرفته الگوهای بایتی در فایل‌ها از طریق خط فرمان

rafind2 [-mBXnzZhqv] [-a align] [-b size] [-f from] [-t to] [-[e|s|S] str] [-x hex] [-E] [-F file] [-g] [-i] [-I str] [-j] [-L] [-M str] [-R str] [-r] [-c] [-V s:num | s:num1,num2] -|file|dir ...

ابزاری چندمنظوره برای جستجوی الگوهای بایتی در فایل‌ها با پشتیبانی از هم‌ترازی، محدوده‌های آفست، پرس‌وجوهای رشته‌ای و هگزادسیمال، و قالب‌های خروجی سفارشی‌سازی‌پذیر.

گزینه‌های زیر در دسترس هستند:

align
تنها تطابق‌های هم‌تراز پذیرفته شوند
size
تنظیم اندازه بلوک
استفاده از ترتیب بایت مهندسی بزرگ (Big-endian) به جای مهندسی کوچک (Little-endian) (به -V مراجعه کنید)
غیرفعال کردن خروجی رنگی (عمدتاً برای -X)
regex
جستجو برای تطابق‌های عبارات باقاعده (regex) (می‌تواند چند بار استفاده شود)
انجام جستجو با استفاده از عبارت ESIL
from
شروع جستجو از نشانی 'from'
file
خواندن محتوای فایل و استفاده از آن به عنوان کلمه کلیدی
درج عبارت جایگزین و تغییر اندازه فایل (فقط همراه با -R)
نمایش پیام راهنما
شناسایی نوع فایل (r2 -nqcpm file)
str
فیلتر کردن فایل‌ها بر اساس اطلاعات rbin (شامل arch/type/bits/...) پیش از جستجو
ارائه خروجی در قالب JSON
فهرست کردن تمام افزونه‌های ورودی/خروجی (IO) (فعلاً مشابه r2)
جستجوی مجیک (Magic search)، استخراج‌کننده انواع فایل (file-type carver)
str
تنظیم ماسک دودویی برای اعمال روی کلمات کلیدی
str
جایگزین کردن هر تطابق با رشته داده‌شده (پیشوند با h: هگز، w: رشته عریض، s: رشته متنی)
عدم توقف در صورت بروز خطای خواندن
چاپ خروجی با استفاده از دستورات radare
str
جستجو برای یک رشته (امکان ارسال بیش از یک رشته وجود دارد)
str
جستجو برای یک رشته عریض (wide string) (امکان ارسال بیش از یک رشته وجود دارد)
to
توقف جستجو در نشانی 'to'
حالت بی‌صدا: خروجی کمتر، بدون نمایش عناوین یا نام فایل‌ها
نمایش اطلاعات نسخه
s:num | s:num1,num2
جستجو برای یک مقدار یا محدوده در ترتیب بایت مشخص‌شده (-V 4:123 یا -V 4:100,200)
hex
جستجو برای رشته جفت‌هگز (909090) همراه با ماسک اختیاری نیبل با استفاده از نقطه (41.42) (می‌تواند چند بار استفاده شود)
نمایش هگز‌دامپ (hexdump) از نتایج جستجو
جستجو برای رشته‌های خاتمه‌یافته با صفر (zero-terminated)
نمایش رشته پیدا شده در هر تطابق جستجو

دستور rafind2 از هیچ متغیر محیطی استفاده نمی‌کند.

جستجو برای یک رشته مشخص در یک فایل:

$ rafind2 -s "search_string" file.txt

جستجو برای یک الگوی هگز در تمام فایل‌های یک پوشه:

$ rafind2 -x "909090" directory_path

جستجو برای الگوی هگز با ماسک نیبل (نقطه یک نیبل تکی را ماسک می‌کند):

$ rafind2 -x "41.42" file.bin

شناسایی نوع فایل:

$ rafind2 -i binary_file

جستجو برای مقدار 123 با ترتیب بایت Little-endian ذخیره‌شده در یک کلمه ۴ بایتی:

$ rafind2 -V 4:123 file.bin

جستجو برای محدوده‌ای از مقادیر (100-200) در یک کلمه ۴ بایتی:

$ rafind2 -V 4:100,200 file.bin

جستجو برای رشته‌های خاتمه‌یافته با صفر و نمایش هر رشته یافت‌شده:

$ rafind2 -zZ file.bin

جستجو با استفاده از الگوی عبارت باقاعده (regex):

$ rafind2 -e "password|passwd" file.txt

نمایش هگز‌دامپ نتایج جستجو:

$ rafind2 -X -s "hello" file.bin

جایگزینی تطابق‌های رشته‌ای در یک فایل:

$ rafind2 -s "old" -R "new" file.bin

radare2(1)

pancake <pancake@nopcode.org>

February 4, 2026