.\" -*- mode: troff; coding: utf-8 -*- .\" Automatically generated by Pod::Man v6.0.2 (Pod::Simple 3.45) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. .ie n \{\ . ds C` "" . ds C' "" 'br\} .el\{\ . ds C` . ds C' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is >0, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .\" .\" Avoid warning from groff about undefined register 'F'. .de IX .. .nr rF 0 .if \n(.g .if rF .nr rF 1 .if (\n(rF:(\n(.g==0)) \{\ . if \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . if !\nF==2 \{\ . nr % 0 . nr F 2 . \} . \} .\} .rr rF .\" .\" Required to disable full justification in groff 1.23.0. .if n .ds AD l .\" ======================================================================== .\" .IX Title "STRINGS 1" .TH STRINGS 1 2026-08-26 binutils-2.47 "GNU Development Tools" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "نام (NAME)" strings \- چاپ رشته‌های نویسه‌های قابل‌چاپ در فایل‌ها .SH "خلاصه دستور (SYNOPSIS)" .IX Header "SYNOPSIS" strings [\fB\-afovV\fR] [\fB\-\fR\fImin\-len\fR] [\fB\-n\fR \fImin\-len\fR] [\fB\-\-bytes=\fR\fImin\-len\fR] [\fB\-t\fR \fIradix\fR] [\fB\-\-radix=\fR\fIradix\fR] [\fB\-e\fR \fIencoding\fR] [\fB\-\-encoding=\fR\fIencoding\fR] [\fB\-U\fR \fImethod\fR] [\fB\-\-unicode=\fR\fImethod\fR] [\fB\-\fR] [\fB\-\-all\fR] [\fB\-\-print\-file\-name\fR] [\fB\-T\fR \fIbfdname\fR] [\fB\-\-target=\fR\fIbfdname\fR] [\fB\-w\fR] [\fB\-\-include\-all\-whitespace\fR] [\fB\-s\fR] [\fB\-\-output\-separator\fR \fIsep_string\fR] [\fB\-\-help\fR] [\fB\-\-version\fR] \fIfile\fR... .SH "توضیحات (DESCRIPTION)" .IX Header "DESCRIPTION" برای هر \fIfile\fR مشخص‌شده، ابزار GNU \fBstrings\fR توالی نویسه‌های قابل‌چاپی را که طول آن‌ها حداقل ۴ نویسه باشد (یا به تعداد تعیین‌شده با گزینه‌های زیر) و پس از آن‌ها یک نویسه غیرقابل‌چاپ بیاید، چاپ می‌کند. .PP بسته به نحوه پیکربندی برنامه strings، این ابزار به طور پیش‌فرض یا تمام توالی‌های قابل‌چاپ موجود در هر فایل را نمایش می‌دهد، یا فقط توالی‌هایی را که در بخش‌های داده‌ای بارگذاری‌شونده و مقداردهی‌شده قرار دارند. اگر نوع فایل غیرقابل‌تشخیص باشد، یا اگر strings در حال خواندن از stdin باشد، همواره تمام توالی‌های قابل‌چاپی را که می‌یابد نمایش خواهد داد. .PP برای سازگاری با گذشته، هر فایلی که بعد از گزینه خط فرمان که صرفاً \fB\-\fR باشد بیاید نیز صرف‌نظر از وجود هرگونه گزینه \fB\-d\fR به طور کامل پویش می‌شود. .PP ابزار \&\fBstrings\fR عمدتاً برای تعیین محتوای فایل‌های غیرمتنی مفید است. .SH "گزینه‌ها (OPTIONS)" .IX Header "OPTIONS" .IP \fB\-a\fR 4 .IX Item "-a" .PD 0 .IP \fB\-\-all\fR 4 .IX Item "--all" .IP \fB\-\fR 4 .IX Item "-" .PD پویش کامل فایل، صرف‌نظر از بخش‌هایی که شامل می‌شود یا اینکه آیا آن بخش‌ها بارگذاری یا مقداردهی اولیه شده‌اند یا خیر. به طور معمول این رفتار پیش‌فرض است، اما strings می‌تواند طوری پیکربندی شود که به جای آن گزینه \&\fB\-d\fR پیش‌فرض باشد. .Sp گزینه \fB\-\fR وابسته به موقعیت است و strings را وادار می‌کند تا هر فایلی را که پس از \fB\-\fR در خط فرمان ذکر شده است به طور کامل پویش کند، حتی اگر گزینه \fB\-d\fR مشخص شده باشد. .IP \fB\-d\fR 4 .IX Item "-d" .PD 0 .IP \fB\-\-data\fR 4 .IX Item "--data" .PD تنها چاپ رشته‌ها از بخش‌های داده‌ای مقداردهی‌شده و بارگذاری‌شده در فایل. این کار ممکن است حجم داده‌های زائد را در خروجی کاهش دهد، اما برنامه strings را نیز در معرض نقص‌های امنیتی احتمالی موجود در کتابخانه BFD (که برای پویش و بارگذاری بخش‌ها استفاده می‌شود) قرار می‌دهد. Strings می‌تواند طوری پیکربندی شود که این گزینه رفتار پیش‌فرض باشد. در چنین مواردی می‌توان از گزینه \fB\-a\fR استفاده کرد تا از به کارگیری کتابخانه BFD پرهیز شود و در عوض فقط تمام رشته‌های یافت‌شده در فایل چاپ شوند. .IP \fB\-f\fR 4 .IX Item "-f" .PD 0 .IP \fB\-\-print\-file\-name\fR 4 .IX Item "--print-file-name" .PD چاپ نام فایل پیش از هر رشته. .IP \fB\-\-help\fR 4 .IX Item "--help" چاپ خلاصه‌ای از راهنمای استفاده از برنامه در خروجی استاندارد و خروج. .IP \fB\-\fR\fImin\-len\fR 4 .IX Item "-min-len" .PD 0 .IP "\fB\-n\fR \fImin\-len\fR" 4 .IX Item "-n min-len" .IP \fB\-\-bytes=\fR\fImin\-len\fR 4 .IX Item "--bytes=min-len" .PD چاپ توالی‌هایی از نویسه‌های قابل‌نمایش که طول آن‌ها حداقل به اندازه \&\fImin\-len\fR نویسه باشد. در صورت مشخص نشدن، حداقل طول پیش‌فرض ۴ استفاده می‌شود. تمایز بین نویسه‌های قابل‌نمایش و غیرقابل‌نمایش به تنظیمات گزینه‌های \&\fB\-e\fR و \fB\-U\fR بستگی دارد. توالی‌ها همواره در نویسه‌های کنترلی مانند خط‌جدید (newline) و بازگشت مکان‌نما (carriage-return)، به‌جز نویسه تب (tab)، پایان می‌یابند. .IP \fB\-o\fR 4 .IX Item "-o" مانند \fB\-t o\fR. در برخی دیگر از نسخه‌های \fBstrings\fR گزینه \fB\-o\fR مانند \fB\-t d\fR عمل می‌کند. از آنجا که نمی‌توان با هر دو روش سازگار بود، ما به سادگی یکی را انتخاب کردیم. .IP "\fB\-t\fR \fIradix\fR" 4 .IX Item "-t radix" .PD 0 .IP \fB\-\-radix=\fR\fIradix\fR 4 .IX Item "--radix=radix" .PD چاپ آفست درون فایل پیش از هر رشته. آرگومان تک‌نویسه‌ای مبنای (radix) آفست را مشخص می‌کند: \fBo\fR برای هشت‌هشتی (octal)، \fBx\fR برای شانزده‌شانزدهی (hexadecimal)، یا \fBd\fR برای ده‌دهی (decimal). .IP "\fB\-e\fR \fIencoding\fR" 4 .IX Item "-e encoding" .PD 0 .IP \fB\-\-encoding=\fR\fIencoding\fR 4 .IX Item "--encoding=encoding" .PD انتخاب کدگذاری نویسه‌های رشته‌هایی که قرار است پیدا شوند. مقادیر ممکن برای \fIencoding\fR عبارتند از: \fBs\fR = نویسه‌های تک‌بایتی ۷\-بیتی (پیش‌فرض)، \fBS\fR = نویسه‌های تک‌بایتی ۸\-بیتی، \fBb\fR = مقدار ۱۶\-بیتی bigendian، \fBl\fR = مقدار ۱۶\-بیتی littleendian، \fBB\fR = مقدار ۳۲\-بیتی bigendian، و \fBL\fR = مقدار ۳۲\-بیتی littleendian. این گزینه برای یافتن رشته‌های نویسه عریض (wide character) مفید است (\fBl\fR و \fBb\fR برای مثال در کدگذاری‌های یونیکد UTF\-16/UCS\-2 کاربرد دارند). .IP "\fB\-U\fR \fI[d|i|l|e|x|h]\fR" 4 .IX Item "-U [d|i|l|e|x|h]" .PD 0 .IP \fB\-\-unicode=\fR\fI[default|invalid|locale|escape|hex|highlight]\fR 4 .IX Item "--unicode=[default|invalid|locale|escape|hex|highlight]" .PD کنترل نحوه نمایش نویسه‌های چندبایتی کدگذاری‌شده با UTF\-8 در رشته‌ها. حالت پیش‌فرض (\fB\-\-unicode=default\fR) رفتار ویژه‌ای با آن‌ها ندارد و در عوض به تنظیمات گزینه \&\fB\-\-encoding\fR متکی است. سایر مقادیر این گزینه به طور خودکار \fB\-\-encoding=S\fR را فعال می‌کنند. .Sp گزینه \fB\-\-unicode=invalid\fR با آن‌ها به عنوان نویسه‌های غیرگرافیکی رفتار کرده و در نتیجه آن‌ها را بخشی از یک رشته معتبر در نظر نمی‌گیرد. تمام گزینه‌های باقی‌مانده با آن‌ها به عنوان نویسه‌های رشته‌ای معتبر رفتار می‌کنند. .Sp گزینه \fB\-\-unicode=locale\fR آن‌ها را بر اساس محلی‌سازی (locale) جاری نمایش می‌دهد، که ممکن است از کدگذاری UTF\-8 پشتیبانی بکند یا نکند. گزینه \&\fB\-\-unicode=hex\fR آن‌ها را به صورت توالی بایت‌های هگز محصور میان نویسه‌های \fI<>\fR نمایش می‌دهد. گزینه \fB\-\-unicode=escape\fR آن‌ها را به عنوان توالی‌های گریز (\fI\euxxxx\fR) نمایش می‌دهد و گزینه \&\fB\-\-unicode=highlight\fR آن‌ها را به عنوان توالی‌های گریز برجسته با رنگ قرمز نمایش می‌دهد (در صورت پشتیبانی دستگاه خروجی). رنگ‌آمیزی برای جلب توجه به حضور توالی‌های یونیکد در جاهایی در نظر گرفته شده که ممکن است مورد انتظار نباشد. .IP "\fB\-T\fR \fIbfdname\fR" 4 .IX Item "-T bfdname" .PD 0 .IP \fB\-\-target=\fR\fIbfdname\fR 4 .IX Item "--target=bfdname" .PD مشخص کردن یک قالب کُد شیء (object code) به غیر از قالب پیش‌فرض سیستم شما. .IP \fB\-v\fR 4 .IX Item "-v" .PD 0 .IP \fB\-V\fR 4 .IX Item "-V" .IP \fB\-\-version\fR 4 .IX Item "--version" .PD چاپ شماره نسخه برنامه در خروجی استاندارد و خروج. .IP \fB\-w\fR 4 .IX Item "-w" .PD 0 .IP \fB\-\-include\-all\-whitespace\fR 4 .IX Item "--include-all-whitespace" .PD به طور پیش‌فرض نویسه‌های تب و فاصله در رشته‌هایی که نمایش داده می‌شوند گنجانده می‌شوند، اما سایر نویسه‌های فضای خالی، مانند خط‌جدیدها و بازگشت مکان‌نماها، گنجانده نمی‌شوند. گزینه \fB\-w\fR این رفتار را تغییر می‌دهد تا تمام نویسه‌های فضای خالی به عنوان بخشی از یک رشته در نظر گرفته شوند. .IP \fB\-s\fR 4 .IX Item "-s" .PD 0 .IP \fB\-\-output\-separator\fR 4 .IX Item "--output-separator" .PD به طور پیش‌فرض، رشته‌های خروجی با یک خط‌جدید جدا می‌شوند. این گزینه به شما امکان می‌دهد هر رشته‌ای را که می‌خواهید به عنوان جداکننده رکورد خروجی مشخص کنید. برای استفاده با \-\-include\-all\-whitespace در جایی که رشته‌ها ممکن است در درون خود حاوی خط‌جدید باشند مفید است. .IP \fB@\fR\fIfile\fR 4 .IX Item "@file" خواندن گزینه‌های خط فرمان از \fIfile\fR. گزینه‌های خوانده‌شده به جای گزینه اصلی @\fIfile\fR قرار می‌گیرند. اگر \fIfile\fR وجود نداشته باشد یا قابل‌خواندن نباشد، با گزینه به صورت لفظی رفتار شده و حذف نمی‌شود. .Sp گزینه‌ها در \fIfile\fR با فاصله سفید جدا می‌شوند. با احاطه کردن کل گزینه در گیومه تکی یا دوگانه می‌توان یک نویسه فاصله سفید را در یک گزینه گنجاند. هر نویسه‌ای (از جمله بک‌اسلش) را می‌توان با افزودن یک بک‌اسلش به عنوان پیشوند به آن گنجاند. خودِ \fIfile\fR می‌تواند شامل گزینه‌های @\fIfile\fR بیشتری باشد؛ هرگونه گزینه از این دست به طور بازگشتی پردازش خواهد شد. .SH "همچنین ببینید (SEE ALSO)" .IX Header "SEE ALSO" \&\fBar\fR\|(1), \fBnm\fR\|(1), \fBobjdump\fR\|(1), \fBranlib\fR\|(1), \fBreadelf\fR\|(1) و مدخل‌های Info برای \fIbinutils\fR. .SH "کپی‌رایت و تکثیر (COPYRIGHT)" .IX Header "COPYRIGHT" Copyright (c) 1991\-2026 Free Software Foundation, Inc. .PP اجازه کپی، توزیع و/یا تغییر این سند تحت شرایط مجوز مستندات آزاد گنو (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخه بعدی منتشر شده توسط بنیاد نرم‌افزارهای آزاد داده می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متن‌های روی جلد و بدون متن‌های پشت جلد. نسخه‌ای از مجوز در بخش تحت عنوان «GNU Free Documentation License» گنجانده شده است.