STRINGS(1) GNU Development Tools STRINGS(1) نام (NAME) strings - چاپ دنباله‌های نویسه‌های قابل چاپ در فایل‌ها خلاصه دستور (SYNOPSIS) strings [-afovV] [-min-len] [-n min-len] [--bytes=min-len] [-t radix] [--radix=radix] [-e encoding] [--encoding=encoding] [-U method] [--unicode=method] [-] [--all] [--print-file-name] [-T bfdname] [--target=bfdname] [-w] [--include-all-whitespace] [-s] [--output-separator sep_string] [--help] [--version] file... توضیحات (DESCRIPTION) به ازای هر file داده‌شده، ابزار GNU strings دنباله‌های نویسه‌های قابل چاپی را که حداقل ۴ نویسه طول دارند (یا طولی که با گزینه‌های زیر تعیین می‌شود) و به یک نویسهٔ غیرقابل چاپ ختم می‌شوند، چاپ می‌کند. بسته به نحوهٔ پیکربندی برنامهٔ strings، این ابزار به‌طور پیش‌فرض یا تمام دنباله‌های قابل چاپ یافت‌شده در هر فایل را نمایش می‌دهد، یا تنها دنباله‌هایی را که در بخش‌های داده‌ای بارگذاری‌شدنی و مقداردهی اولیه‌شده قرار دارند. اگر نوع فایل ناشناخته باشد یا strings در حال خواندن از stdin باشد، همیشه تمام دنباله‌های قابل چاپی را که پیدا کند نمایش خواهد داد. برای حفظ سازگاری با نسخه‌های گذشته، هر فایلی که بعد از گزینهٔ خط فرمانیِ منفردِ - آورده شود، صرف‌نظر از وجود هرگونه گزینهٔ -d، به‌طور کامل پویش خواهد شد. دستور strings عمدتاً برای تشخیص محتویات فایل‌های غیرمتنی کاربرد دارد. گزینه‌ها (OPTIONS) -a --all - پویش تمام فایل، بدون توجه به اینکه چه بخش‌هایی دارد یا اینکه آیا آن بخش‌ها بارگذاری یا مقداردهی اولیه شده‌اند یا خیر. معمولاً این رفتار پیش‌فرض است، اما ممکن است strings به گونه‌ای پیکربندی شده باشد که گزینهٔ -d به‌جای آن پیش‌فرض باشد. گزینهٔ - به موقعیت مکانی وابسته است و strings را وادار می‌کند تا هر فایلی را که بعد از - در خط فرمان قرار گرفته است به‌طور کامل پویش کند، حتی اگر گزینهٔ -d تعیین شده باشد. -d --data تنها چاپ رشته‌ها از بخش‌های داده‌ایِ مقداردهی اولیه‌شده و بارگذاری‌شده در فایل. این گزینه ممکن است مقدار داده‌های نامربوط و زائد در خروجی را کاهش دهد، اما برنامهٔ strings را در معرض هرگونه نقص امنیتی احتمالی موجود در کتابخانهٔ BFD (که برای پویش و بارگذاری بخش‌ها استفاده می‌شود) قرار می‌دهد. ممکن است strings طوری پیکربندی شده باشد که این گزینه رفتار پیش‌فرض آن باشد. در این شرایط، می‌توان از گزینهٔ -a استفاده کرد تا بدون به‌کارگیری کتابخانهٔ BFD، صرفاً تمام رشته‌های موجود در فایل چاپ شوند. -f --print-file-name چاپ نام فایل پیش از هر رشته. --help چاپ خلاصه‌ای از راهنمای استفاده از برنامه در خروجی استاندارد و خروج. -min-len -n min-len --bytes=min-len چاپ دنباله‌های نویسه‌های قابل نمایش که حداقل min-len نویسه طول دارند. در صورت تعیین نشدن، حداقل طول پیش‌فرض برابر با ۴ در نظر گرفته می‌شود. تمایز میان نویسه‌های قابل نمایش و غیرقابل نمایش به تنظیمات گزینه‌های -e و -U بستگی دارد. این دنباله‌ها همیشه با نویسه‌های کنترلی مانند new-line و carriage-return پایان می‌یابند، اما نویسهٔ tab انتهای آن‌ها به شمار نمی‌رود. -o همانند -t o. در برخی نسخه‌های دیگر strings، گزینهٔ -o همانند -t d عمل می‌کند. از آنجا که امکان سازگاری با هر دو شیوه وجود ندارد، صرفاً یکی انتخاب شده است. -t radix --radix=radix چاپ آفست (موقعیت) درون فایل پیش از هر رشته. این آرگومان تک‌نویسه‌ای مبنای عددی آفست را تعیین می‌کند---o برای هشت‌هشتی (octal)، x برای شانزده‌شانزدهی (hexadecimal)، یا d برای ده‌دهی (decimal). -e encoding --encoding=encoding انتخاب کدگذاری نویسهٔ رشته‌هایی که باید پیدا شوند. مقادیر ممکن برای encoding عبارتند از: s = نویسه‌های تک‌بایتی ۷ بیتی (پیش‌فرض)، S = نویسه‌های تک‌بایتی ۸ بیتی، b = داده‌های ۱۶ بیتی bigendian، l = داده‌های ۱۶ بیتی littleendian، B = داده‌های ۳۲ بیتی bigendian، L = داده‌های ۳۲ بیتی littleendian. این گزینه برای یافتن رشته‌های نویسه عریض (wide character) کاربرد دارد (l و b برای مثال در کدگذاری‌های یونی‌کد UTF-16/UCS-2 استفاده می‌شوند). -U [d|i|l|e|x|h] --unicode=[default|invalid|locale|escape|hex|highlight] کنترل نحوهٔ نمایش نویسه‌های چندبایتیِ دارای کدگذاری UTF-8 در رشته‌ها. حالت پیش‌فرض (--unicode=default) رفتار خاصی با آن‌ها ندارد و به تنظیمات گزینهٔ --encoding بسنده می‌کند. سایر مقادیر این گزینه به‌طور خودکار گزینهٔ --encoding=S را فعال می‌کنند. گزینهٔ --unicode=invalid با آن‌ها به عنوان نویسه‌های غیرگرافیکی برخورد کرده و در نتیجه آن‌ها را جزئی از یک رشتهٔ معتبر در نظر نمی‌گیرد. تمام گزینه‌های دیگر با آن‌ها به عنوان نویسه‌های رشته‌ای معتبر رفتار می‌کنند. گزینهٔ --unicode=locale آن‌ها را با لوکال (locale) فعلی نمایش می‌دهد که ممکن است از کدگذاری UTF-8 پشتیبانی بکند یا نکند. گزینهٔ --unicode=hex آن‌ها را به‌صورت دنباله‌ای از بایت‌های هگزادسیمال درون نویسه‌های <> نمایش می‌دهد. گزینهٔ --unicode=escape آن‌ها را به‌صورت دنباله‌های گریز (\uxxxx) نشان می‌دهد و گزینهٔ --unicode=highlight آن‌ها را به‌صورت دنباله‌های گریزِ متمایز با رنگ قرمز (در صورت پشتیبانی دستگاه خروجی) نمایش می‌دهد. این رنگ‌آمیزی برای جلب توجه به حضور دنباله‌های یونی‌کد در مکان‌هایی است که انتظار دیدنشان نمی‌رود. -T bfdname --target=bfdname مشخص کردن قالب کدهای شیء (object code) به شیوه‌ای غیر از قالب پیش‌فرض سیستم شما. -v -V --version چاپ شماره نسخهٔ برنامه در خروجی استاندارد و خروج. -w --include-all-whitespace به‌طور پیش‌فرض، نویسه‌های فاصله (space) و برگه (tab) در رشته‌های نمایش‌داده‌شده قرار می‌گیرند، اما سایر نویسه‌های فاصلهٔ خالی مانند خط جدید (newline) و بازگشت به ابتدای سطر (carriage return) لحاظ نمی‌شوند. گزینهٔ -w این رفتار را تغییر می‌دهد تا تمامی نویسه‌های فاصلهٔ خالی جزئی از رشته در نظر گرفته شوند. -s --output-separator به‌طور پیش‌فرض، رشته‌های خروجی با یک سطر تازه (new-line) از یکدیگر تفکیک می‌شوند. این گزینه امکان تعیین هرگونه رشتهٔ دلخواه به عنوان جداکنندهٔ رکوردهای خروجی را فراهم می‌سازد. این امکان همراه با --include-all-whitespace که ممکن است رشته‌ها در درون خود حاوی سطرهای تازه باشند، مفید است. @file خواندن گزینه‌های خط فرمان از file. گزینه‌های خوانده‌شده در همان مکان گزینهٔ @file اولیه جایگزین می‌شوند. اگر file وجود نداشته باشد یا خواندنی نباشد، با گزینه دقیقاً به همان صورت لفظی رفتار می‌شود و حذف نمی‌گردد. گزینه‌ها در file به کمک نویسه‌های فاصلهٔ خالی از هم جدا می‌شوند. یک نویسهٔ فاصلهٔ خالی می‌تواند با قرار دادن کل گزینه در علامت‌های نقل‌قول تکی یا جفتی در گزینه گنجانده شود. هر نویسه‌ای (از جمله ممیز وارونه) را می‌توان با درج یک ممیز وارونه در پیش از آن وارد کرد. خود file می‌تواند شامل گزینه‌های @file دیگری باشد؛ چنین گزینه‌هایی به‌صورت بازگشتی پردازش خواهند شد. همچنین ببینید (SEE ALSO) ar(1), nm(1), objdump(1), ranlib(1), readelf(1) و مدخل‌های Info برای binutils. کپی‌رایت و تکثیر (COPYRIGHT) حق نشر (c) 1991-2025 متعلق به Free Software Foundation, Inc است. اجازهٔ کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخهٔ ۱.۳ یا هر نسخهٔ بالاتر منتشرشده توسط بنیاد نرم‌افزارهای آزاد داده می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد و بدون متون پشت جلد. نسخه‌ای از این مجوز در بخشی با عنوان "GNU Free Documentation License" درج شده است. binutils-2.45.1 2026-01-23 STRINGS(1)