.\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .TH iconv 1 2025-09-21 "Linux man-pages 6.19" .SH "نام (NAME)" iconv \- تبدیل متن از یک کدگذاری نویسه به کدگذاری دیگر .SH "خلاصه دستور (SYNOPSIS)" .SY iconv .RI [ options ] .RI [\f[B]\-f\f[]\~ from-encoding ] .RI [\f[B]\-t\f[]\~ to-encoding ] .RI [ inputfile \~.\|.\|.] .YS .SH "توضیحات (DESCRIPTION)" برنامه .B iconv متن را در یک کدگذاری خوانده و آن را در کدگذاری دیگری خروجی می‌دهد. اگر هیچ فایل ورودی مشخص نشود، یا اگر به‌صورت یک خط پیوند (\-) مشخص شود، .B iconv از ورودی استاندارد می‌خواند. اگر هیچ فایل خروجی مشخص نشود، .B iconv در خروجی استاندارد می‌نویسد. .P اگر هیچ .I from-encoding مشخص نشده باشد، مقدار پیش‌فرض از کدگذاری نویسه‌های محلی جاری گرفته می‌شود. اگر هیچ .I to-encoding مشخص نشده باشد، مقدار پیش‌فرض از کدگذاری نویسه‌های محلی جاری گرفته می‌شود. .SH "گزینه‌ها (OPTIONS)" .TP .BI \-\-from\-code= from-encoding .TQ .BI \-f\~ from-encoding استفاده از .I from-encoding برای نویسه‌های ورودی. .TP .BI \-\-to\-code= to-encoding .TQ .BI \-t\~ to-encoding استفاده از .I to-encoding برای نویسه‌های خروجی. .IP اگر رشته .B //IGNORE به .IR to-encoding پیوست شود، نویسه‌هایی که قابل تبدیل نیستند نادیده گرفته شده و پس از تبدیل، یک خطا چاپ می‌شود. (نویسه‌هایی که قابل رمزگشایی نیستند، چه با این پرچم و چه بدون آن، به عنوان خطا در نظر گرفته می‌شوند.) .IP اگر رشته .B //TRANSLIT به .IR to-encoding پیوست شود، نویسه‌های در حال تبدیل در صورت نیاز و امکان نویسه‌گردانی می‌شوند. این بدان معناست که وقتی یک نویسه نمی‌تواند در مجموعه نویسه‌های مقصد نمایش داده شود، می‌توان آن را با یک یا چند نویسه با ظاهر مشابه تقریب زد. نویسه‌هایی که خارج از مجموعه نویسه‌های مقصد هستند و امکان نویسه‌گردانی آن‌ها وجود ندارد، در خروجی با یک علامت سؤال (?) جایگزین می‌شوند. .TP .B \-\-list .TQ .B \-l فهرست کردن تمام کدگذاری‌های مجموعه نویسه شناخته‌شده. .TP .B \-c نادیده گرفتن نویسه‌هایی که قابل تبدیل نیستند به جای پایان دادن به اجرای برنامه در زمان برخورد با چنین نویسه‌هایی. .\" glibc commit 6cbf845fcdc76131d0e674cee454fe738b69c69d استاندارد POSIX الزام می‌کند که این گزینه وضعیت خروج برنامه را تغییر ندهد. .TP .BI \-\-output= outputfile .TQ .BI \-o\~ outputfile استفاده از .I outputfile برای خروجی. .TP .B \-\-silent .TQ .B \-s این گزینه نادیده گرفته می‌شود؛ تنها برای سازگاری ارائه شده است. .TP .B \-\-verbose چاپ اطلاعات پیشرفت روی خطای استاندارد هنگام پردازش چندین فایل. .TP .B \-\-help .TQ .B \-? چاپ خلاصه‌ای از نحوه استفاده و خروج. .TP .B \-\-usage چاپ خلاصه‌ای کوتاه از نحوه استفاده و خروج. .TP .B \-\-version .TQ .B \-V چاپ شماره نسخه، مجوز و سلب مسئولیت ضمانت برای .BR iconv . .SH "وضعیت خروج (EXIT STATUS)" صفر در صورت موفقیت، غیر صفر در صورت بروز خطا. .SH "محیط (ENVIRONMENT)" درون برنامه، .B iconv از تابع .BR iconv (3) استفاده می‌کند که آن هم به نوبه خود از ماژول‌های .I gconv (کتابخانه‌های اشتراکی با بارگذاری پویا) برای تبدیل به یک مجموعه نویسه یا از آن استفاده می‌کند. پیش از فراخوانی .BR iconv (3)، برنامه .B iconv باید ابتدا یک توصیف‌گر تبدیل را با استفاده از .BR iconv_open (3) تخصیص دهد. عملکرد این تابع تحت تأثیر تنظیمات متغیر محیطی .B GCONV_PATH است: .IP \[bu] 3 اگر .B GCONV_PATH تنظیم نشده باشد، .BR iconv_open (3) فایل کش پیکربندی ماژول‌های gconv سیستم را که توسط .BR iconvconfig (8) ایجاد شده بارگذاری می‌کند و سپس بر پایه این پیکربندی، ماژول‌های gconv لازم برای انجام تبدیل را بارگذاری می‌نماید. اگر فایل کش پیکربندی ماژول‌های gconv سیستم در دسترس نباشد، آن‌گاه از فایل پیکربندی ماژول‌های gconv سیستم استفاده می‌شود. .IP \[bu] اگر .B GCONV_PATH تعریف شده باشد (به‌صورت فهرستی از مسیرها که با دونقطه از هم جدا شده‌اند)، کش پیکربندی ماژول‌های gconv سیستم استفاده نمی‌شود. در عوض، .BR iconv_open (3) ابتدا تلاش می‌کند فایل‌های پیکربندی را با جستجوی دایرکتوری‌ها در .B GCONV_PATH به ترتیب بارگذاری کند، و پس از آن به سراغ فایل پیکربندی پیش‌فرض سیستم برای ماژول‌های gconv برود. اگر یک دایرکتوری فاقد فایل پیکربندی ماژول‌های gconv باشد، هر ماژول gconv موجود در آن نادیده گرفته می‌شود. اگر دایرکتوری حاوی فایل پیکربندی ماژول‌های gconv باشد و مشخص شود که ماژول مورد نیاز برای این تبدیل در آن دایرکتوری موجود است، آن‌گاه ماژول مورد نیاز از آن دایرکتوری بارگذاری می‌شود؛ ترتیب به گونه‌ای است که اولین ماژول مناسب یافت‌شده در .B GCONV_PATH مورد استفاده قرار می‌گیرد. این ویژگی به کاربران امکان می‌دهد تا با قرار دادن ماژول‌های سفارشی در دایرکتوری‌های .BR GCONV_PATH ، از ماژول‌های سفارشی استفاده کرده و حتی ماژول‌های ارائه‌شده توسط سیستم را جایگزین نمایند. .SH "فایل‌ها (FILES)" .TP .I /usr/lib/gconv مسیر پیش‌فرض معمول برای ماژول‌های gconv. .TP .I /usr/lib/gconv/gconv\-modules فایل پیکربندی پیش‌فرض معمول سیستم برای ماژول‌های gconv. .TP .I /usr/lib/gconv/gconv\-modules.cache کش پیکربندی پیش‌فرض معمول سیستم برای ماژول‌های gconv. .P بسته به معماری سیستم، فایل‌های بالا ممکن است در دایرکتوری‌هایی با پیشوند مسیر .IR /usr/lib64 قرار داشته باشند. .SH "استانداردها (STANDARDS)" POSIX.1-2008. .SH "تاریخچه (HISTORY)" POSIX.1-2001. .SH "مثال‌ها (EXAMPLES)" تبدیل متن از کدگذاری نویسه ISO/IEC\~8859-15 به UTF-8: .P .in +4n .EX .RB $ " iconv \-f ISO\-8859\-15 \-t UTF\-8 < input.txt > output.txt" ; .EE .in .P مثال بعدی از UTF-8 به ASCII تبدیل می‌کند و در صورت امکان نویسه‌گردانی انجام می‌دهد: .P .in +4n .EX .RB $ " echo abc ß α € àḃç | iconv \-f UTF\-8 \-t ASCII//TRANSLIT" ; abc ss ? EUR abc .EE .in .SH "همچنین ببینید (SEE ALSO)" .BR locale (1), .BR uconv (1), .BR iconv (3), .BR nl_langinfo (3), .BR charsets (7), .BR iconvconfig (8)