XDG-MIME(1) xdg-mime Manual XDG-MIME(1)

xdg-mime - ابزار خط فرمان برای پرس‌وجوی اطلاعات مربوط به مدیریت انواع فایل و افزودن توصیفات انواع فایل جدید

xdg-mime query {filetype FILE | default mimetype}

xdg-mime default application mimetype(s)

xdg-mime install [--mode mode] [--novendor] mimetypes-file

xdg-mime uninstall [--mode mode] mimetypes-file

xdg-mime {--help | --manual | --version}

برنامهٔ xdg-mime می‌تواند برای پرس‌وجوی اطلاعات دربارهٔ انواع فایل و افزودن توصیفات برای انواع فایل جدید استفاده شود.

query file

نوع فایل FILE را در قالب یک نوع MIME بازمی‌گرداند.

لطفاً توجه داشته باشید که نام‌های FILE که با - آغاز شوند رد خواهند شد؛ این مشکل را می‌توان به روش‌های زیر برطرف کرد:

•ارسال مسیرهای مطلق، یعنی با استفاده از realpath به‌عنوان پیش‌پردازنده.
•افزودن پیشوند “./” به مسیرهای نسبیِ شناخته‌شده. برای مثال با استفاده از sed -E 's|^[^/]|./\0|' به‌عنوان پیش‌پردازنده.

گزینهٔ query file تنها برای استفاده در یک نشست میزکار است. استفاده از xdg-mime query file به‌عنوان کاربر ریشه (root) توصیه نمی‌شود.

query default

برنامهٔ پیش‌فرضی را که محیط میزکار برای باز کردن فایل‌های از نوع mimetype استفاده می‌کند، بازمی‌گرداند. برنامهٔ پیش‌فرض از روی فایل *.desktop آن شناسایی می‌شود.

مقدار بازگردانده شده توسط این دستور ممکن است با برنامه‌ای که توسط xdg-open اجرا می‌شود یکسان باشد یا نباشد، چرا که xdg-open در اغلب موارد کار را به بازکننده‌های ویژهٔ میزکار می‌سپارد که ممکن است منطق خاص خود را پیاده‌سازی کنند.

گزینهٔ query default تنها برای استفاده در یک نشست میزکار است. استفاده از xdg-mime query default به‌عنوان کاربر ریشه (root) توصیه نمی‌شود.

default

از محیط میزکار درخواست می‌کند تا application را به برنامهٔ پیش‌فرض برای باز کردن فایل‌های از نوع mimetype تبدیل کند. با مشخص کردن چندین نوع مایم (mimetype)، می‌توان یک برنامه را برای چندین نوع فایل به برنامهٔ پیش‌فرض تبدیل کرد.

application شناسهٔ فایل desktop برنامه است و ساختاری به‌صورت vendor-name.desktop دارد. application باید پیش از آنکه بتواند به‌عنوان گردانندهٔ پیش‌فرض تنظیم شود، در منوی میزکار نصب شده باشد. فایل desktop برنامه باید پشتیبانی از همهٔ انواع MIME را که مایل است گردانندهٔ پیش‌فرض آن‌ها باشد، فهرست کرده باشد.

درخواست‌ها برای تبدیل یک برنامه به گردانندهٔ پیش‌فرض ممکن است مشمول سیاست‌های سیستم یا تأیید توسط کاربر نهایی باشد. دستور xdg-mime query می‌تواند برای راستی‌آزمایی اینکه آیا یک برنامه گردانندهٔ پیش‌فرض واقعی برای یک نوع فایل خاص است یا خیر، به کار رود.

نکتهٔ امنیتی: هرگز گرداننده‌ای تنظیم نکنید که کدها یا دستورات فایل در حال پردازش را کورکورانه اجرا کند. چنین رفتاری دیر یا زود به اجرای ناخواستهٔ کد منجر خواهد شد؛ به‌عنوان مثال از طریق کاربری کنجکاو که می‌کوشد فایلی تازه بارگیری‌شده را بررسی کند، اما تصادفاً آن را اجرا می‌نماید.

تفکیک اقدامات باز کردن و اجرا کردن به محافظت افراد در برابر بدافزارها کمک می‌کند؛ گردانندهٔ پیش‌فرض یک بازکننده (opener) است، نه یک اجراکننده (runner).

گزینهٔ default تنها برای استفاده در یک نشست میزکار است. استفاده از xdg-mime default به‌عنوان کاربر ریشه (root) توصیه نمی‌شود.

install

توصیفات نوع فایل ارائه‌شده در mimetypes-file را به محیط میزکار اضافه می‌کند. mimetypes-file باید یک فایل XML باشد که از مشخصات پایگاه‌دادهٔ freedesktop.org Shared MIME-info پیروی کرده و عنصر mime-info را به‌عنوان ریشهٔ سند خود داشته باشد. برای هر نوع فایل جدید باید یک یا چند نمایه (icon) با نام type-subtype با استفاده از دستور xdg-icon-resource در سیاق (context) mimetypes نصب شود. به‌عنوان مثال نوع فایل application/vnd.oasis.opendocument.text نیازمند نمایه‌ای با نام application-vnd.oasis.opendocument.text است (مگر آنکه نوع فایل، نام نمایهٔ دیگری را توصیه کرده باشد).

uninstall

توصیفات نوع فایل ارائه‌شده در mimetypes-file را که پیش‌تر با دستور xdg-mime install اضافه شده بود، از محیط میزکار حذف می‌کند. mimetypes-file باید یک فایل XML باشد که از مشخصات پایگاه‌دادهٔ freedesktop.org Shared MIME-info پیروی کرده و عنصر mime-info را به‌عنوان ریشهٔ سند خود داشته باشد.

--mode mode

mode می‌تواند user یا system باشد. در حالت user، فایل تنها برای کاربر کنونی نصب (یا لغو نصب) می‌شود. در حالت system، فایل برای تمام کاربران روی سیستم نصب (یا لغو نصب) می‌شود. معمولاً تنها کاربر ریشه اجازهٔ نصب در حالت system را دارد.

پیش‌فرض این است که هنگام فراخوانی توسط ریشه از حالت system و هنگام فراخوانی توسط کاربر غیرریشه از حالت user استفاده شود.

--novendor

به‌طور معمول، xdg-mime بررسی می‌کند تا مطمئن شود که mimetypes-file مورد نظر برای نصب، دارای یک پیشوند ارائه‌دهندهٔ مناسب است. این گزینه می‌تواند برای غیرفعال کردن این بررسی استفاده شود.

یک پیشوند ارائه‌دهنده از نویسه‌های الفبایی ([a-zA-Z]) تشکیل شده و به یک خط تیره («-») ختم می‌شود. شرکت‌ها و سازمان‌ها تشویق می‌شوند از یک کلمه یا عبارت، ترجیحاً نام سازمان که علامت تجاری آن را در اختیار دارند، به عنوان پیشوند ارائه‌دهندهٔ خود استفاده کنند. هدف از پیشوند ارائه‌دهنده، جلوگیری از تداخل نام‌ها است.

--help

نمایش خلاصهٔ دستور.

--manual

نمایش این صفحهٔ راهنما.

--version

نمایش اطلاعات نسخهٔ xdg-utils.

دستور xdg-mime از متغیرهای محیطی زیر پیروی می‌کند:

XDG_UTILS_DEBUG_LEVEL

تنظیم این متغیر محیطی روی یک مقدار عددی غیرصفر باعث می‌شود xdg-mime گزارش‌های پرجزئیات‌تری را در stderr ارائه دهد. تنظیم مقداری بالاتر، میزان جزئیات را افزایش می‌دهد.

XDG_UTILS_INSTALL_MODE

این متغیر محیطی می‌تواند توسط کاربر یا مدیر سیستم برای تغییر حالت نصب استفاده شود. مقادیر معتبر عبارتند از user و system.

کد خروج 0 نشان‌دهندهٔ موفقیت است، در حالی که کد خروج غیرصفر نشان‌دهندهٔ شکست است. کدهای خطای زیر ممکن است بازگردانده شوند:

1

خطا در نحو خط فرمان.

2

یکی از فایل‌های ارائه‌شده در خط فرمان وجود نداشت.

3

ابزار مورد نیاز یافت نشد.

4

عملیات ناموفق بود.

5

عدم وجود مجوز برای خواندن یکی از فایل‌های ارائه‌شده در خط فرمان.

xdg-icon-resource(1), xdg-desktop-menu(1), Shared MIME database specification[1], MIME applications associations specification[2]

xdg-mime query filetype /tmp/foobar.png

نوع MIME فایل /tmp/foobar.png را چاپ می‌کند، که در این مورد image/png است.

xdg-mime query default image/png

نام فایل .desktop برنامه‌ای را که برای باز کردن فایل‌های PNG ثبت شده است، چاپ می‌کند.

xdg-mime install shinythings-shiny.xml

یک شرح نوع فایل برای فایل‌های "shiny" اضافه می‌کند. از "shinythings-" به عنوان پیشوند ارائه‌دهنده استفاده می‌شود. شرح نوع فایل می‌تواند مانند زیر باشد.

shinythings-shiny.xml:
<?xml version="1.0"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
  <mime-type type="text/x-shiny">
    <comment>Shiny new file type</comment>
    <glob pattern="*.shiny"/>
    <glob pattern="*.shi"/>
  </mime-type>
</mime-info>

یک آیکون برای این نوع فایل جدید نیز باید نصب شود، برای مثال با:

xdg-icon-resource install --context mimetypes --size 64 shiny-file-icon.png text-x-shiny

Kevin Krammer

نویسنده.

Jeremy White

نویسنده.
کپی‌رایت © 2006

1.
مشخصات پایگاه‌دادهٔ مشترک MIME
2.
مشخصات انتساب برنامه‌های MIME
12/06/2025 xdg-utils 1.0