DICT(1) DICT(1) نام (NAME) dict - کلاینت پروتکل DICT خلاصه دستور (SYNOPSIS) dict word dict [options] [word] dict [options] dict://host:port/d:word:database dict [options] dict://host:port/m:word:database:strategy توضیحات (DESCRIPTION) dict یک کلاینت برای پروتکل کارساز واژه‌نامه (DICT) است؛ یک پروتکل پرس‌وجو/پاسخ مبتنی بر تراکنش TCP که دسترسی به تعاریف واژه‌نامه‌ای را از مجموعه‌ای از پایگاه‌های داده واژه‌نامه زبان طبیعی فراهم می‌کند. وضعیت خروج در صورت موفقیت‌آمیز بودن عملیات 0 و در غیر این صورت مقداری غیر صفر است. بخش وضعیت خروج (EXIT STATUS) را ببینید. گزینه‌ها (OPTIONS) -h server یا --host server نام میزبان را برای کارساز DICT مشخص می‌کند. ترکیب‌های کارساز/درگاه می‌توانند در فایل پیکربندی تعیین شوند. اگر هیچ کارسازی در فایل پیکربندی یا در خط فرمان مشخص نشده باشد، dict با شکست مواجه خواهد شد. اگر جستجوی IP برای یک کارساز به فهرستی از نشانی‌های IP گسترش یابد (همان‌طور که در حال حاضر dict.org عمل می‌کند)، هر IP به ترتیب فهرست‌شده آزمایش خواهد شد. -p service یا --port service درگاه (مانند 2628) یا سرویس (مانند dict) را برای اتصال‌ها مشخص می‌کند. پیش‌فرض 2628 است، همان‌طور که در RFC پروتکل DICT مشخص شده است. ترکیب‌های کارساز/درگاه می‌توانند در فایل پیکربندی تعیین شوند. -d dbname یا --database dbname یک پایگاه داده خاص را برای جستجو تعیین می‌کند. حالت پیش‌فرض، جستجو در تمام پایگاه‌های داده است ("*" در پروتکل DICT). توجه داشته باشید که "!" در پروتکل DICT به معنای جستجو در تمام پایگاه‌های داده تا زمان یافتن یک تطابق و سپس توقف جستجو است. -m یا --match به جای چاپ یک تعریف، یک تطابق را با استفاده از راهبرد مشخص‌شده انجام می‌دهد. -s strategy یا --strategy strategy یک راهبرد تطابق را مشخص می‌کند. به‌طور پیش‌فرض از راهبرد تطابق پیش‌فرض کارساز استفاده می‌شود. این معمولاً برای تعاریف "exact" و برای تطابق‌ها نوعی راهبرد تصحیح املایی است ("." در پروتکل DICT). راهبردهای موجود به پیاده‌سازی کارساز بستگی دارند. برای دیدن فهرستی از راهبردهای در دسترس، گزینه -S یا --strats را ببینید. -C یا --nocorrect معمولاً اگر تعریفی درخواست شود و واژه یافت نشود، تصحیح املایی از کارساز درخواست شده و فهرستی از واژه‌های احتمالی ارائه می‌شود. این گزینه تولید این فهرست را غیرفعال می‌کند. -c file یا --config file فایل پیکربندی را مشخص می‌کند. حالت پیش‌فرض این است که ~/.dictrc و /etc/dict/dict.conf آزموده شوند و نخستین فایلی که وجود دارد استفاده شود. اگر یک فایل پیکربندی خاص تعیین شود، موارد پیش‌فرض آزموده نخواهند شد. -D یا --dbs از کارساز پرس‌وجو کرده و فهرستی از پایگاه‌های داده در دسترس را نمایش می‌دهد. -S یا --strats از کارساز پرس‌وجو کرده و فهرستی از راهبردهای جستجوی در دسترس را نمایش می‌دهد. -H یا --serverhelp از کارساز پرس‌وجو کرده و اطلاعات راهنمایی را که ارائه می‌دهد نمایش می‌دهد. -i dbname یا --info dbname اطلاعات مربوط به پایگاه داده مشخص‌شده را درخواست می‌کند (معمولاً کارساز اطلاعات منشأ، توصیفی یا اطلاعات دیگری را درباره پایگاه داده یا محتویات آن ارائه می‌دهد). -I یا --serverinfo از کارساز پرس‌وجو کرده و اطلاعات مربوط به کارساز را نمایش می‌دهد. -M یا --mime دستور OPTION MIME را به کارساز ارسال می‌کند. نکته: قابلیت‌های کارساز بررسی نمی‌شوند. -f یا --formatted خروجی قالب‌بندی‌شده را فعال می‌کند، یعنی خروجی مناسب برای پردازش‌های بعدی توسط ابزارهای استاندارد UNIX. خیر، این خروجی XML نیست ;-) همچنین پیام‌های خطا و هشدار مانند " No matches...", " Invalid strategy..." و غیره به جای stdout به stderr ارسال می‌شوند. قالب: -I, -i, -H و موارد مشابه: hostport line1 line2 ... -S: hostportstrategy1short description1 hostportstrategy2short description2 ... -D: hostportdatabase1database description1 hostportdatabase2database description2 ... -m: hostportdatabase1match1 hostportdatabase2match2 ... -a یا --noauth احراز هویت را غیرفعال می‌کند (یعنی دستور AUTH ارسال نمی‌شود). -u user یا --user user نام کاربری را برای احراز هویت تعیین می‌کند. -k key یا --key key راز مشترک (shared secret) را برای احراز هویت تعیین می‌کند. -V یا --version اطلاعات نگارش را نمایش می‌دهد. -L یا --license اطلاعات کپی‌رایت و پروانه را نمایش می‌دهد. -4 دستور dict را وادار می‌کند تا تنها از نشانی‌های IPv4 استفاده کند. -6 دستور dict را وادار می‌کند تا تنها از نشانی‌های IPv6 استفاده کند. --help اطلاعات راهنما را نمایش می‌دهد. -v یا --verbose نمایش با جزئیات بیشتر. -r یا --raw بسیار با جزئیات: نمایش تعامل خام کلاینت/کارساز. --pipesize اندازه بافر را برای خط لوله‌سازی دستورها مشخص می‌کند. مقدار پیش‌فرض 256 است که باید برای کارهای عمومی کافی بوده و برای بیشتر رسانه‌های انتقال کمتر از MTU باشد. مقادیر بزرگ‌تر بسته به MTU ممکن است بازدهی سریع‌تر یا کندتری ارائه دهند. اگر بافر خیلی کوچک باشد، درخواست‌ها متوالی (serialized) خواهند شد. مقادیر کمتر از 0 و بزرگ‌تر از یک میلیون بدون هشدار به مقداری معقول‌تر تغییر می‌یابند. --client text متن اضافه‌ای را مشخص می‌کند که باید با دستور CLIENT ارسال شود. --debug flag یک پرچم اشکال‌زدایی را تنظیم می‌کند. پرچم‌های معتبر عبارتند از: verbose همانند -v یا --verbose. raw همانند -r یا --raw. scan اشکال‌زدایی پویشگر (scanner) فایل پیکربندی. parse اشکال‌زدایی تجزیه‌کننده (parser) فایل پیکربندی. pipe اشکال‌زدایی پشتیبانی از خط لوله TCP (به RFC پروتکل DICT و RFC1854 مراجعه کنید). serial غیرفعال کردن پشتیبانی از خط لوله‌سازی. time انجام زمان‌سنجی تراکنش‌ها. پیکربندی (CONFIGURATION) فایل پیکربندی در حال حاضر ساختار بسیار ساده‌ای دارد. خطوط برای تعیین کارسازها استفاده می‌شوند، برای مثال: server dict.org یا به همراه گزینه‌ها: server dict.org { port 8080 } server dict.org { user username secret } server dict.org { port dict user username secret } گزینه‌های port و user می‌توانند به هر ترتیبی مشخص شوند. گزینه port برای تعیین درگاه اختیاری (مانند 2628) یا سرویس (مانند dict) برای اتصال TCP/IP استفاده می‌شود. گزینه user برای تعیین نام کاربری و راز مشترک جهت استفاده در احراز هویت در این کارساز خاص به کار می‌رود. کارسازها به ترتیب فهرست‌شده آزمایش می‌شوند تا زمانی که یک اتصال برقرار شود. وضعیت خروج (EXIT STATUS) 0 پایان موفقیت‌آمیز 20 تطابقی یافت نشد 21 تطابق‌های تقریبی پیدا شد 22 هیچ پایگاه داده‌ای در دسترس نیست 23 هیچ راهبردی در دسترس نیست 30 کد پاسخ غیرمنتظره از کارساز 31 کارساز موقتاً در دسترس نیست 32 کارساز در حال خاموش شدن است 33 خطای نحوی، دستور ناشناخته است 34 خطای نحوی، پارامترهای نامعتبر 35 دستور پیاده‌سازی نشده است 36 پارامتر دستور پیاده‌سازی نشده است 37 دسترسی رد شد 38 احراز هویت ناموفق بود 39 پایگاه داده نامعتبر است 40 راهبرد نامعتبر است 41 اتصال به کارساز ناموفق بود دست‌اندرکاران (CREDITS) dict توسط Rik Faith (faith@cs.unc.edu) نوشته شده و تحت شرایط پروانه عمومی همگانی گنو (GPL) توزیع می‌شود. اگر نیاز دارید تحت شرایط دیگری آن را توزیع کنید، به نویسنده بنویسید. کتابخانه‌های اصلی استفاده‌شده توسط این برنامه (zlib، regex، libmaa) تحت شرایط متفاوتی توزیع می‌شوند، بنابراین ممکن است بتوانید از این کتابخانه‌ها برای برنامه‌هایی که با GPL ناسازگار هستند استفاده کنید -- لطفاً برای اطلاعات بیشتر به اعلان‌های کپی‌رایت و اطلاعات پروانه همراه کتابخانه‌ها مراجعه کرده، و برای حل این مسائل با وکیل خود مشورت نمایید. گزارش باگ‌ها (BUGS) اگر یک نشانی وب dict: در خط فرمان داده شود، تنها اولین مورد استفاده خواهد شد. بقیه نادیده گرفته می‌شوند. اگر یک نشانی وب dict: حاوی مشخص‌کننده‌ای برای n-امین تعریف یا تطابق یک واژه باشد، نادیده گرفته شده و تمام تعاریف یا تطابق‌ها ارائه می‌شوند. این رفتار ناقض RFC است و در انتشار‌های بعدی اصلاح خواهد شد. اگر یک نشانی وب dict: شامل راز مشترک باشد، به‌درستی تجزیه نخواهد شد. هنگامی که دستور OPTION MIME به کارساز ارسال می‌شود (گزینه -M) ، قابلیت‌های کارساز بررسی نمی‌شوند. فایل‌ها (FILES) ~/.dictrc فایل پیکربندی کاربر برای dict /etc/dict/dict.conf فایل پیکربندی سیستمی dict همچنین ببینید (SEE ALSO) dictd(8), dictzip(1), http://www.dict.org, RFC 2229 15 February 1998 DICT(1)