GIO(1) دستورهای کاربر GIO(1)

gio - ابزار خط فرمان برای کار با ورودی/خروجی و سیستمفایلهای مجازی GIO

gio help [دستور]
gio version
gio cat مکان…
gio copy [گزینه…] مبدأ… مقصد
gio info [گزینه…] مکان…
gio launch فایل-دسکتاپ [آرگومان-فایل…]
gio list [گزینه…] [مکان…]
gio mime نوع-MIME [گرداننده]
gio mkdir [گزینه…] مکان…
gio monitor [گزینه…] [مکان…]
gio mount [گزینه…] [مکان…]
gio move [گزینه…] مبدأ… مقصد
gio open مکان…
gio rename مکان نام
gio remove [گزینه…] مکان…
gio save [گزینه…] مقصد
gio set [گزینه…] مکان مشخصه مقدار…
gio trash [گزینه…] [مکان…]
gio tree [گزینه…] [مکان…]

دستور gio ابزاری است که بسیاری از قابلیت‌های GIO را در خط فرمان در دسترس قرار می‌دهد. بدین ترتیب، دستورهایی مشابه با ابزارهای سنتی فراهم می‌کند، اما به شما امکان می‌دهد به‌جای فایل‌های محلی از مکان‌های GIO استفاده کنید؛ برای نمونه می‌توانید از مکانی مانند smb://server/resource/file.txt استفاده نمایید.

نام‌های سادهٔ فایل‌ها که حاوی دونقطه (:) باشند به عنوان یک URI با پروتکل ناشناخته تفسیر خواهند شد. برای جلوگیری از این رفتار، پیشوندی از مسیر مانند ./ یا پروتکل file: را به آن‌ها اضافه کنید.

حجم‌ها (volumes)، درایوها و نقاط اتصال تنها به مواردی محدود می‌شوند که برای کاربر جالب توجه هستند، مانند درایوهای جداشدنی (removable). نقاط اتصال سیستمی نمایش داده نمی‌شوند، به این معنی که خروجی gio mount معادل خروجی ابزارهایی مانند fdisk نیست، و gio monitor --mounts تنها رویدادهای مربوط به نقاط اتصال برگزیده را فهرست می‌کند.

help [دستور]

خلاصه‌ای کوتاه از دستورهای موجود را نمایش می‌دهد یا راهنمای تفصیلی دربارهٔ یک دستور خاص را ارائه می‌کند.

version

نسخهٔ GLib که gio به آن تعلق دارد را چاپ می‌کند.

cat مکان…

فایل‌های مشخص‌شده را الحاق کرده و در خروجی استاندارد چاپ می‌کند.

دستور cat درست مانند ابزار سنتی cat کار می‌کند.

نکته: اگر به گزینه‌های قالب‌بندی ابزار cat مانند -n، -T یا گزینه‌های دیگر نیاز دارید، خروجی را از طریق لوله به cat هدایت کنید.

copy [گزینه…] مبدأ… مقصد

یک یا چند فایل را از مبدأ به مقصد رونوشت‌برداری می‌کند. اگر بیش از یک مبدأ مشخص شده باشد، مقصد باید یک دایرکتوری باشد.

دستور copy مشابه ابزار سنتی cp است.

گزینه‌ها

-T, --no-target-directory

عدم رونوشت‌برداری به درون مقصد حتی اگر مقصد یک دایرکتوری باشد.

-p, --progress

نمایش میزان پیشرفت.

-i, --interactive

درخواست تایید پیش از بازنویسی فایل‌ها.

--preserve

حفظ تمام مشخصه‌های فایل‌های رونوشت‌برداری‌شده.

-b, --backup

ایجاد نسخهٔ پشتیبان از فایل‌های موجود در مقصد.

-P, --no-dereference

هرگز پیوندهای نمادین دنبال نشوند.

--default-permissions

استفاده از دسترسی‌های پیش‌فرض فرایند جاری برای فایل مقصد، به‌جای رونوشت‌برداری از دسترسی‌های فایل مبدأ.

info [گزینه…] مکان…

اطلاعات مربوط به مکان‌های داده‌شده را نمایش می‌دهد.

دستور info مشابه ابزار سنتی ls است.

گزینه‌ها

-w, --query-writable

فهرست کردن مشخصه‌های قابل نوشتن.

-f, --filesystem

نمایش اطلاعات دربارهٔ سیستم‌فایلی که مکان‌های داده‌شده روی آن قرار دارند.

-a, --attributes=<ATTRIBUTES>

مشخصه‌هایی که باید دریافت شوند.

مشخصه‌ها را می‌توان با نام GIO آن‌ها مانند standard::icon، یا صرفاً با فضای نام مانند unix، یا با * که با تمام مشخصه‌ها مطابقت دارد مشخص کرد. چندین مشخصه یا گروهی از مشخصه‌ها را می‌توان با ویرگول لاتین (comma) از هم جدا کرد.

به‌طور پیش‌فرض، تمام مشخصه‌ها فهرست می‌شوند.

-n, --nofollow-symlinks

پیوندهای نمادین دنبال نشوند.

launch فایل-دسکتاپ [آرگومان-فایل…]

اجرای یک فایل دسکتاپ از هر مکان داده‌شده.

دستور launch رفتار دستور open را گسترش می‌دهد و امکان اجرای هر فایل دسکتاپی را فراهم می‌آورد، نه فقط آن‌هایی که به عنوان گردانندهٔ فایل ثبت شده‌اند.

list [گزینه…] [مکان…]

محتویات مکان‌های داده‌شده را فهرست می‌کند. اگر مکانی مشخص نشود، محتویات دایرکتوری جاری نمایش داده می‌شود.

دستور list مشابه ابزار سنتی ls است.

گزینه‌ها

-a, --attributes=<ATTRIBUTES>

مشخصه‌هایی که باید دریافت شوند.

مشخصه‌ها را می‌توان با نام GIO آن‌ها مانند standard::icon، یا صرفاً با فضای نام مانند unix، یا با * که با تمام مشخصه‌ها مطابقت دارد مشخص کرد. چندین مشخصه یا گروهی از مشخصه‌ها را می‌توان با ویرگول از هم جدا کرد.

به‌طور پیش‌فرض، تمام مشخصه‌ها فهرست می‌شوند.

-h, --hidden

نمایش فایل‌های پنهان.

-l, --long

استفاده از قالب فهرست‌بندی طولانی با جزئیات.

-n, --nofollow-symlinks

پیوندهای نمادین دنبال نشوند.

-d, --print-display-names

چاپ نام‌های نمایشی.

-u, --print-uris

چاپ نشانی‌های کامل URI.

mime نوع-MIME [گرداننده]

اگر گرداننده‌ای داده نشود، دستور mime برنامه‌های ثبت‌شده و توصیه‌شده را برای نوع MIME فهرست می‌کند. اگر یک گرداننده داده شود، به عنوان گردانندهٔ پیش‌فرض برای نوع MIME تنظیم می‌شود.

گرداننده‌ها باید با نام فایل دسکتاپ خود همراه با پسوند مشخص شوند. مثال: org.gnome.gedit.desktop.

mkdir [گزینه…] مکان…

دایرکتوری‌ها را ایجاد می‌کند.

دستور mkdir مشابه ابزار سنتی mkdir است.

گزینه‌ها

-p, --parent

ایجاد دایرکتوری‌های والد در صورت نیاز.

monitor [گزینه…] [مکان…]

فایل‌ها یا دایرکتوری‌ها را برای تغییرات مانند ایجاد، حذف، تغییر محتوا و مشخصه‌ها، و عملیات اتصال (mount) و قطع اتصال (unmount) موثر بر مکان‌های تحت نظارت، پایش می‌کند.

دستور monitor برای انجام وظایف خود از رابط‌های برنامه‌نویسی پایش فایل GIO استفاده می‌کند. GIO پیاده‌سازی‌های مختلفی برای سیستم‌عامل‌های گوناگون دارد. متداول‌ترین پیاده‌سازی روی لینوکس از inotify استفاده می‌کند.

گزینه‌ها

-d, --dir=<LOCATION>

مکان داده‌شده را به عنوان یک دایرکتوری پایش می‌کند. به طور معمول، نوع فایل برای تعیین پایش به عنوان فایل یا دایرکتوری استفاده می‌شود.

-f, --file=<LOCATION>

مکان داده‌شده را به عنوان یک فایل پایش می‌کند. به طور معمول، نوع فایل برای تعیین پایش به عنوان فایل یا دایرکتوری استفاده می‌شود.

-D, --direct=<LOCATION>

فایل را مستقیماً پایش می‌کند. این قابلیت اجازه می‌دهد تا تغییرات اعمال‌شده از طریق پیوندهای سخت (hardlinks) ثبت شوند.

-s, --silent=<LOCATION>

فایل را مستقیماً پایش می‌کند، اما تغییرات را گزارش نمی‌کند.

-n, --no-moves

گزارش جابه‌جایی‌ها و تغییر نام‌ها به عنوان رویدادهای سادهٔ حذف‌شده/ایجادشده.

-m, --mounts

پایش رویدادهای اتصال (mount).

mount [گزینه…] [مکان…]

دسترسی خط فرمانی به جنبه‌های گوناگون قابلیت‌های اتصال (mounting) در GIO را فراهم می‌کند.

اتصال (Mounting) به مفهوم سنتی سامان‌دهی چندین سیستم‌فایل و دستگاه در یک درخت واحد با ریشهٔ / اشاره دارد. اتصال کلاسیک در هسته رخ می‌دهد و توسط ابزار mount کنترل می‌شود. GIO این مفهوم را با معرفی دیمن‌های اتصال گسترش می‌دهد که می‌توانند بدون مداخلهٔ هسته، سیستم‌فایل‌ها را در دسترس برنامه‌های GIO قرار دهند.

اتصال‌های GIO ممکن است به احراز هویت نیاز داشته باشند، و دستور mount ممکن است در صورت لزوم شناسهٔ کاربری، گذرواژه و موارد دیگر را درخواست کند.

گزینه‌ها

-m, --mountable

اتصال به عنوان قابل اتصال (mountable).

-d, --device=<ID>

اتصال حجم با فایل دستگاه یا شناسهٔ دیگر.

-u, --unmount

قطع اتصال مکان مورد نظر.

-e, --eject

بیرون دادن (eject) مکان.

-t, --stop=<DEVICE>

متوقف کردن درایو با فایل دستگاه.

-s, --unmount-scheme=<SCHEME>

قطع اتصال تمامی اتصال‌ها با طرح‌وارهٔ (scheme) مشخص‌شده.

-f, --force

نادیده گرفتن عملیات معلق فایل هنگام قطع اتصال یا بیرون دادن.

-a, --anonymous

استفاده از کاربر ناشناس هنگام احراز هویت.

-l, --list

فهرست کردن تمام اتصال‌های GIO.

-o, --monitor

پایش رویدادهای مرتبط با اتصال.

-i, --detail

نمایش اطلاعات تکمیلی و جزئیات بیشتر.

--tcrypt-pim

مقدار عددی PIM هنگام باز کردن قفل حجم VeraCrypt.

--tcrypt-hidden

اتصال یک حجم مخفی TCRYPT.

--tcrypt-system

اتصال یک حجم سیستمی TCRYPT.

move [گزینه…] مبدأ… مقصد

یک یا چند فایل را از مبدأ به مقصد منتقل می‌کند. اگر بیش از یک مبدأ مشخص شده باشد، مقصد باید یک دایرکتوری باشد.

دستور move مشابه ابزار سنتی mv است.

گزینه‌ها

-T, --no-target-directory

عدم انتقال به درون مقصد حتی اگر مقصد یک دایرکتوری باشد.

-p, --progress

نمایش میزان پیشرفت.

-i, --interactive

درخواست تایید پیش از بازنویسی فایل‌ها.

-b, --backup

تهیهٔ نسخهٔ پشتیبان از فایل‌های موجود در مقصد.

-C, --no-copy-fallback

عدم استفاده از سازوکار جایگزین رونوشت‌برداری و حذف در صورت عدم امکان انتقال مستقیم.

open مکان…

فایل‌ها را با برنامهٔ پیش‌فرضی که برای کار با فایل‌های این نوع ثبت شده است باز می‌کند.

دستور GIO این اطلاعات را از پایگاه دادهٔ shared-mime-info به دست می‌آورد، و تنظیمات بازنویسی‌شدهٔ اختصاصی هر کاربر در $XDG_DATA_HOME/applications/mimeapps.list ذخیره می‌شود.

می‌توان از دستور mime برای تغییر گردانندهٔ پیش‌فرض یک نوع MIME استفاده کرد.

متغیرهای محیطی روی برنامه تنظیم نمی‌شوند، چرا که ممکن است فرایندی موجود باشد که برای مدیریت فایل جدید فعال شده است.

rename مکان نام

نام یک فایل را تغییر می‌دهد.

دستور rename مشابه ابزار سنتی rename است.

remove [گزینه…] مکان…

هر یک از فایل‌های مشخص‌شده را حذف می‌کند.

این دستور فایل‌ها را به‌صورت غیرقابل بازگشت حذف می‌کند. اگر روشی قابل بازگشت برای حذف فایل‌ها می‌خواهید، دستور trash را ببینید.

توجه داشته باشید که همه طرح‌واره‌های URI پشتیبانی‌شده توسط GIO ممکن است اجازهٔ حذف فایل‌ها را ندهند.

دستور remove مشابه ابزار سنتی rm است.

گزینه‌ها

-f, --force

نادیده گرفتن فایل‌های ناموجود و فایل‌هایی که قابل حذف نیستند.

save [گزینه…] مقصد

داده‌ها را از ورودی استاندارد می‌خواند و در مکان داده‌شده ذخیره می‌کند.

این دستور مشابه تغییر مسیر سادهٔ خروجی به یک فایل با قواعد نحوی سنتی شل است، اما دستور save اجازه می‌دهد در مکان‌هایی ذخیره کنید که GIO امکان نوشتن در آن‌ها را دارد.

گزینه‌ها

-b, --backup

تهیه نسخهٔ پشتیبان از فایل‌های موجود در مقصد.

-c, --create

تنها در صورتی مقصد ایجاد شود که هنوز وجود نداشته باشد.

-a, --append

الحاق به انتهای فایل.

-p, --private

هنگام ایجاد، دسترسی تنها به کاربر فعلی محدود شود.

-u, --unlink

هنگام جایگزینی، چنان جایگزین شود که گویی مقصد از قبل وجود نداشته است.

-v, --print-etag

چاپ مقدار ETag جدید در پایان کار.

-e, --etag=<ETAG>

مقدار ETag فایلی که قرار است بازنویسی شود.

set [گزینه…] مکان مشخصه مقدار…

یک مشخصهٔ فایل را روی یک فایل تنظیم می‌کند.

مشخصه‌های فایل را می‌توان با نام GIO آن‌ها مشخص کرد، مانند standard::icon. توجه داشته باشید که همه مشخصه‌های فایل در GIO قابل نوشتن نیستند. از گزینهٔ --query-writable دستور info برای فهرست کردن مشخصه‌های قابل نوشتن فایل استفاده کنید.

اگر TYPE تنظیم نشده باشد (unset)، نیازی به تعیین VALUE نیست. اگر نوع مشخصه stringv باشد، می‌توان چندین مقدار تعیین کرد.

گزینه‌ها

-t, --type=<TYPE>

نوع مشخصه را تعیین می‌کند. انواع پشتیبانی‌شده عبارتند از: string, stringv, bytestring, boolean, uint32, int32, uint64, int64 و unset.

اگر نوع تعیین نشود، نوع string در نظر گرفته می‌شود.

-d, --delete

حذف یک مشخصه (مشابه با تنظیم نوع آن به unset).

-n, --nofollow-symlinks

پیوندهای نمادین دنبال نشوند.

trash [گزینه…] [مکان…]

فایل‌ها یا دایرکتوری‌ها را به «سطل زباله» می‌فرستد یا آن‌ها را از سطل زباله بازیابی می‌کند. این پوشه بسته به مکان فایل ممکن است متفاوت باشد و تمام سیستم‌فایل‌ها از این مفهوم پشتیبانی نمی‌کنند. در حالت رایج که فایل درون دایرکتوری خانگی کاربر است، پوشهٔ سطل زباله $XDG_DATA_HOME/Trash است.

توجه داشته باشید که انتقال فایل‌ها به سطل زباله تا زمانی که سطل زباله خالی نشود، فضای سیستم‌فایل را آزاد نمی‌کند. اگر مایلید فایلی را به‌صورت غیرقابل برگشت حذف کنید، به دستور remove مراجعه نمایید.

بررسی و خالی کردن سطل زباله معمولاً توسط مدیر فایل‌های گرافیکی مانند Nautilus پشتیبانی می‌شود، اما می‌توانید سطل زباله را با دستورهای زیر نیز مشاهده کنید: gio trash --list یا gio list trash://.

گزینه‌ها

-f, --force

نادیده گرفتن فایل‌های ناموجود و غیرقابل حذف.

--empty

خالی کردن سطل زباله.

--list

فهرست کردن فایل‌های موجود در سطل زباله همراه با مکان‌های اصلی آن‌ها.

--restore

بازیابی یک فایل از سطل زباله به مکان اصلی آن. در این حالت یک URI که با trash:// شروع می‌شود انتظار می‌رود. اگر دایرکتوری اصلی وجود نداشته باشد، مجدداً ایجاد خواهد شد.

tree [گزینه…] [مکان…]

محتویات مکان‌های داده‌شده را به‌طور بازگشتی در قالبی درختی فهرست می‌کند. اگر مکانی داده نشود، به‌طور پیش‌فرض دایرکتوری جاری در نظر گرفته می‌شود.

دستور tree مشابه ابزار سنتی tree است.

گزینه‌ها

-h, --hidden

نمایش فایل‌های پنهان.

-l, --follow-symlinks

دنبال کردن پیوندهای نمادین.

در صورت موفقیت، مقدار 0 بازگردانده می‌شود؛ در غیر این صورت یک کد خطای غیر صفر بازگردانده خواهد شد.

cat(1), cp(1), ls(1), mkdir(1), mv(1), rm(1), tree(1)

2025-05-01 glib2