.\" -*- 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-03 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\-\-all\fR یا \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 بستگی دارد. توالی‌ها همواره در کاراکترهای کنترلی نظیر خط جدید (new\-line) و بازگشت به سر خط (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 چاپ آفست درون فایل پیش از هر رشته. آرگومان تک‌کاراکتری مبنای آفست را تعیین می‌کند: \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 Select the character encoding of the strings that are to be found. مقادیر ممکن برای \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 آن‌ها را در لوکال فعلی نمایش می‌دهد، که ممکن است از کدگذاری 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 به طور پیش‌فرض، کاراکترهای تب (tab) و فاصله (space) در رشته‌هایی که نمایش داده می‌شوند لحاظ می‌شوند، اما سایر کاراکترهای فاصلهٔ خالی (whitespace) نظیر خط جدید و بازگشت به سر خط لحاظ نمی‌شوند. گزینهٔ \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" کپی‌رایت \(co 1991\-2026 بنیاد نرم‌افزار آزاد (Free Software Foundation, Inc.) .PP اجازه کپی، توزیع و/یا تغییر این سند تحت شرایط «مجوز مستندات آزاد گنو» (GNU Free Documentation License)، نسخه ۱.۳ یا هر نسخه بعدی منتشرشده توسط بنیاد نرم‌افزار آزاد اعطا می‌شود؛ بدون بخش‌های تغییرناپذیر، بدون متون روی جلد، و بدون متون پشت جلد. یک نسخه از این مجوز در بخشی با عنوان «GNU Free Documentation License» گنجانده شده است.