PG(1) User Commands PG(1)

pg - مرور پرونده‌های متنی به صورت صفحه‌به‌صفحه

pg -*amount *-p prompt -cefnrs +line +/pattern/ file_ ...

دستور pg یک پروندهٔ متنی را هر بار به اندازهٔ یک صفحه بر روی نمایشگر نشان می‌دهد. پس از هر صفحه، یک اعلان نمایش داده می‌شود. سپس کاربر می‌تواند با فشردن کلید خط جدید صفحهٔ بعدی را مشاهده کند یا یکی از کلیدهای شرح‌داده‌شده در زیر را فشار دهد.

اگر هیچ نام پرونده‌ای در خط فرمان مشخص نشده باشد، pg از ورودی استاندارد می‌خواند. اگر خروجی استاندارد یک ترمینال نباشد، pg مانند cat(1) عمل می‌کند، اما اگر بیش از یک پرونده وجود داشته باشد، پیش از محتوای هر پرونده نام آن را درج می‌کند.

اگر ورودی از یک لوله دریافت شود، pg داده‌ها را هنگام خواندن در یک پروندهٔ میانگیر ذخیره می‌کند تا امکان پیمایش فراهم شود.

دستور pg گزینه‌های زیر را می‌پذیرد:

+number

شروع از شماره خط مشخص‌شده.

+/pattern*/*

شروع از خطی که شامل عبارت باقاعدهٔ پایهٔ pattern مشخص‌شده است.

-number

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

-c

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

-e

در انتهای پرونده مکث نکرده و عبارت (EOF) را نمایش ندهد.

-f

خطوط طولانی شکسته نشوند.

-n

بدون این گزینه، دستورات باید با یک نویسهٔ خط جدید خاتمه یابند.

با این گزینه، به محض وارد کردن حرف دستور، pg به جلو می‌رود.

-p string

به جای اعلان عادی :، عبارت string نمایش داده می‌شود. اگر string حاوی %d باشد، نخستین رخداد آن با شمارهٔ صفحهٔ جاری جایگزین می‌شود.

-r

غیرمجاز کردن گریز به پوسته (shell escape).

-s

چاپ پیام‌ها در حالت برجسته (standout)، در صورتی که مدخل terminfo ترمینال این قابلیت را فراهم کند.

-h, --help

نمایش متن راهنما و خروج.

-V, --version

نمایش نسخه و خروج.

دستورات زیر را می‌توان در خط اعلان وارد کرد. دستوراتی که در این سند پیشوند i دارند، یک عدد را به عنوان آرگومان (مثبت یا منفی) می‌پذیرند. اگر این آرگومان با + یا - آغاز شود، به صورت نسبی نسبت به موقعیت جاری در پروندهٔ ورودی تفسیر می‌شود، در غیر این صورت نسبت به ابتدای پرونده در نظر گرفته می‌شود.

i<Enter>

نمایش صفحهٔ بعدی یا صفحهٔ مشخص‌شده.

id یا ^D

نمایش نیم‌صفحهٔ بعدی. اگر i داده شود، همواره به صورت نسبی نسبت به موقعیت جاری تفسیر می‌شود.

il

نمایش خط بعدی یا خط مشخص‌شده.

if

پرش یک صفحه به جلو. i باید یک عدد مثبت باشد و همواره به صورت نسبی نسبت به موقعیت جاری تفسیر می‌شود.

iw یا iz

مانند <Enter> به جز اینکه i به اندازهٔ جدید صفحه تبدیل می‌شود.

. یا ^L

ترسیم مجدد صفحه نمایش.

$

رفتن به آخرین خط پروندهٔ ورودی.

i/pattern/

جستجو به سمت جلو تا زمانی که اولین یا i-امین رخداد عبارت باقاعدهٔ پایهٔ pattern پیدا شود. جستجو پس از صفحهٔ جاری آغاز شده و در انتهای پرونده متوقف می‌شود. هیچ گردشی به ابتدای پرونده (wrap-around) انجام نمی‌شود. i باید یک عدد مثبت باشد.

i?pattern? یا ipattern

جستجو به سمت عقب تا زمانی که اولین یا i-امین رخداد عبارت باقاعدهٔ پایهٔ pattern پیدا شود. جستجو پیش از صفحهٔ جاری آغاز شده و در ابتدای پرونده متوقف می‌شود. هیچ گردشی به انتهای پرونده (wrap-around) انجام نمی‌شود. i باید یک عدد مثبت باشد.

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

in

رفتن به پروندهٔ بعدی یا i پرونده به جلو.

ip

خواندن مجدد پروندهٔ قبلی یا i پرونده به عقب.

s filename

ذخیرهٔ پروندهٔ جاری با نام پروندهٔ مشخص‌شده در filename.

h

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

!command

اجرای command با استفاده از پوسته.

q یا Q

خروج.

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

متغیرهای محیطی زیر بر رفتار pg تأثیر می‌گذارند:

COLUMNS

در صورت تنظیم، تعداد ستون‌های مشخص‌شده توسط سیستم را بازنویسی (override) می‌کند.

LANG, LC_ALL, LC_COLLATE, LC_CTYPE, LC_MESSAGES

به locale(7) مراجعه کنید.

LINES

در صورت تنظیم، تعداد خطوط مشخص‌شده توسط سیستم را بازنویسی (override) می‌کند.

SHELL

توسط دستور ! استفاده می‌شود.

TERM

نوع ترمینال را تعیین می‌کند.

دستور pg انتظار دارد که فواصل تب در ترمینال در هر هشت موقعیت تنظیم شده باشند.

پرونده‌هایی که شامل نویسه‌های NUL باشند، توسط pg قابل نمایش نیستند.

cat(1), more(1), sh(1p), terminfo(5), locale(7), regex(7), term(7)

برای گزارش باگ‌ها، از سامانه پیگیری مشکلات https://github.com/util-linux/util-linux/issues.

دستور pg بخشی از بستهٔ util-linux است که می‌توان آن را از آرشیو هسته لینوکس https://www.kernel.org/pub/linux/utils/util-linux. دریافت کرد.

2026-09-02 util-linux 2.42.3