qprint(1) General Commands Manual qprint(1)

qprint - کدگذاری و رمزگشایی فایل با قالب RFC 1521 MIME Quoted-Printable

qprint -d|-e [ options ] [ infile [ outfile ] ]

مشخصات MIME (پسوندهای چندمنظوره پست الکترونیک اینترنت، RFC 1521 و نسخه‌های پس از آن) سازوکاری را برای کدگذاری متنی تعریف می‌کند که عمدتاً از نویسه‌های ASCII قابل چاپ تشکیل شده است، اما ممکن است حاوی نویسه‌هایی باشد (برای مثال، حروف دارای اعراب در مجموعه نویسه ISO 8859 Latin-1) که نمی‌توانند به عنوان ASCII هفت‌بیتی کدگذاری شوند یا نویسه‌های غیرقابل‌چاپی هستند که ممکن است مأموران انتقال ایمیل را دچار سردرگمی کنند.

qprint یک ابزار خط فرمان است که فایل‌ها را در این قالب کدگذاری و رمزگشایی می‌کند. این ابزار می‌تواند درون یک خط لوله به عنوان یک فیلتر کدگذاری یا رمزگشایی به کار رود، و در این حالت معمولاً به عنوان بخشی از یک سامانه خودکار پردازش نامه استفاده می‌شود. با گزینه‌های مناسب، qprint می‌تواند فایل‌های کاملاً باینری را نیز کدگذاری کند، اما انتخاب ضعیفی است چرا که ممکن است حجم فایل را تا سه برابر افزایش دهد. کدگذاری Base64 MIME برای چنین داده‌هایی انتخاب بسیار بهتری است.

با فایل ورودی (هنگام کدگذاری) یا خروجی (هنگام رمزگشایی) به عنوان باینری خالص رفتار کرده و دنباله‌های پایان خط را مانند داده‌های باینری پردازش می‌کند. کدگذاری و رمزگشایی یک فایل با این گزینه، توالی دقیق بایت‌ها را در ورودی حفظ می‌کند، اما تبدیل دنباله‌های پایان خط را که معمولاً توسط کدگذاری Quoted-Printable انجام می‌شود، اعمال نخواهد کرد.
اطلاعات حق نشر (کپی‌رایت) برنامه را چاپ می‌کند.
ورودی را که پیش‌تر توسط qprint ایجاد شده است، رمزگشایی می‌کند تا فایل ورودی اصلی بازیابی شود.
ورودی را در یک فایل متنی خروجی حاوی کدگذاری qprint آن کدگذاری می‌کند.
نویسه‌های ASCII را که معادل آن‌ها در مجموعه نویسه EBCDIC وجود ندارد، کدگذاری می‌کند. این امر باعث انتقال‌پذیری بهتر فایل‌ها در صورت ارسال به سیستم‌های EBCDIC می‌شود.
بررسی خطا را هنگام رمزگشایی غیرفعال می‌کند. به طور پیش‌فرض، در صورت مواجهه با یک نویسه غیرفاصله‌ای که به مجموعه qprint تعلق ندارد، یا کشف این که پدینگ فایل ورودی به درستی مضربی از چهار نویسه نیست، qprint یک پیام خطا صادر کرده و پردازش را با وضعیت خروج 1 خاتمه می‌دهد. گزینه -n حتی این بررسی خطای مقدماتی را نیز متوقف می‌کند؛ نویسه‌های نامعتبر بدون هشدار نادیده گرفته می‌شوند و در صورت پدینگ نادرست ورودی، خروجی به آخرین سه هشت‌بیت (octet) معتبر برش می‌خورد.
تمام نویسه‌ها در فایل ورودی به عنوان دنباله گریز (escape sequence) کدگذاری خواهند شد. در صورتی که مایلید دنباله‌های پایان خط نیز به صورت دنباله گریز کدگذاری شوند، باید گزینه -b یا --binary را نیز مشخص کنید. این گزینه آخرین راه چاره برای مواقعی است که هیچ راه دیگری برای انتقال فایل وجود ندارد، اما کدگذاری‌هایی که صراحتاً برای داده‌های باینری طراحی شده‌اند مانند Base64، انتخابی بسیار مقرون‌به‌صرفه‌تر هستند.
اطلاعات نحوه فراخوانی دستور را چاپ می‌کند.
اطلاعات نسخه برنامه را چاپ می‌کند.

qprint در صورتی که پردازش بدون خطا به پایان برسد، وضعیت 0 را برمی‌گرداند؛ در صورت وقوع خطای ورودی/خروجی یا شناسایی خطاهایی در رمزگشایی فایل که نشان‌دهنده نادرست یا ناقص بودن آن باشد مقدار 1، و چنانچه پردازش اصلاً امکان‌پذیر نباشد (برای مثال به دلیل وجود نداشتن فایل ورودی) مقدار 2 را برمی‌گرداند.

اگر هیچ infile مشخص نشده باشد یا infile یک تک‌نویسه «-» باشد، qprint از ورودی استاندارد می‌خواند؛ اگر هیچ outfile داده نشده باشد، یا outfile یک تک‌نویسه «-» باشد، خروجی به خروجی استاندارد ارسال می‌شود. ورودی و خروجی کاملاً به صورت ترتیبی پردازش می‌شوند؛ بنابراین qprint می‌تواند در خطوط لوله استفاده شود. این برنامه قادر است فایل‌هایی با هر اندازه پشتیبانی‌شده توسط سیستم که حاوی خطوط متنی با طول دلخواه هستند را پردازش کند.

کدگذاری فایلی با درصد بالایی از نویسه‌های غیر ASCII ممکن است حجم آن را به شکل چشمگیری افزایش دهد. این مسئله جزو ماهیت ذاتی طراحی کدگذاری Quoted-Printable است.

لطفاً باگ‌ها و خطاهای مستندات را به bugs@fourmilab.ch گزارش دهید.

base64(1), uuencode(1), RFC1521

John Walker
http://www.fourmilab.ch

این نرم‌افزار در مالکیت عمومی (Public Domain) قرار دارد. بدین وسیله مجوز استفاده، کپی، تغییر و توزیع این نرم‌افزار و مستندات آن برای هر منظور و بدون هزینه، بدون هیچ‌گونه قید و شرط یا محدودیتی اعطا می‌شود. این نرم‌افزار «همان‌طور که هست» بدون هیچ ضمانت صریح یا ضمنی ارائه شده است.

این نسخه 1.1 از qprint است. نسخه فعلی این برنامه می‌تواند از نشانی زیر بارگیری شود: http://www.fourmilab.ch/webtools/qprint

16 DEC 2014 4th Berkeley Distribution