خط فرمان لینوکس – نمایش محتویات فایل با دستور less
نمایش محتویات فایل با less
دستور less برنامه ای برای نمایش فایل های متنی است. در سراسر سیستم لینوکس ما، فایلهای زیادی وجود دارند که حاوی متن قابل خواندن توسط انسان است. برنامه less یک راه مناسب برای بررسی آنها فراهم میکند.
“متن” چیست؟
راههای زیادی برای نمایش اطلاعات روی یک کامپیوتر وجود دارد. همه (این) روشها شامل تعریف یک رابطه بین اطلاعات و تعدادی عدد هستند که برای نشان دادن آن (اطلاعات) به کار میروند. در واقع کامپیوترها فقط اعداد را درک میکنند و تمام داده ها به نمایش عددی تبدیل میشوند.
برخی از این سیستم های نمایش، بسیار پیچیده هستند (مانند فایل های ویدئویی فشرده)، در حالی که برخی دیگر نسبتاً ساده هستند. یکی از قدیمیترین و سادهترین (آنها) متن ASCII نام دارد. ASCII (با تلفظ “اَسکی”) کوتاه شده American Standard Code for Information Interchange (کد استاندارد آمریکایی برای تبادل اطلاعات) است. این یک طرح رمزنگاری ساده است که برای اولین بار در ماشینهای تلهتایپ (Teletype) برای نگاشت کاراکترهای صفحه کلید به اعداد استفاده شد.
متن، یک نگاشت ساده یک به یک از کاراکترها به اعداد است. این، (روشی) بسیار فشرده و جمع و جور است. پنجاه کاراکتر متن به پنجاه بایت داده ترجمه میشود. درک این نکته مهم است که متن فقط شامل یک نگاشت ساده از کاراکترها به اعداد است. این مانند یک سند واژه پرداز مشابه آنچه توسط Microsoft Word یا LibreOffice Writer ایجاد شده، نیست. چنین فایلهایی، برخلاف متن اسکی ساده، حاوی تعداد زیادی اجزای غیر متنی هستند که برای توصیف ساختار و قالببندی آن استفاده میشوند. فایلهای متنی اسکی ساده فقط شامل خود کاراکترها و چند کد کنترل ابتدایی مانند تب ها، برگشت به ابتدای خط (carriage return) و رفتن به خط بعد (line feed) هستند.
در سراسر یک سیستم لینوکس، بسیاری از فایلها در قالب متن نگهداری میشوند و ابزارهای لینوکس بسیاری وجود دارند که با فایلهای متنی کار میکنند. حتی ویندوز هم اهمیت این فرمت را به رسمیت میشناسد. برنامه مشهور NOTEPAD.EXE یک ویرایشگر برای فایل های متنی اسکی ساده است.
چرا میخواهیم فایل های متنی را بررسی کنیم؟ چون بسیاری از فایلهایی که حاوی تنظیمات سیستم هستند (موسوم به فایلهای پیکربندی) در این قالب نگهداری میشوند و توانایی خواندن آنها به ما بینشی در مورد نحوه عملکرد سیستم میدهد. علاوه بر این، برخی از برنامه های واقعی که سیستم (از آنها) استفاده میکند (موسوم به اسکریپت) در این قالب نگهداری میشود. در فصلهای بعدی، نحوه ویرایش فایلهای متنی برای تغییر تنظیمات سیستم و نوشتن اسکریپتهای خودمان را یاد میگیریم، اما در حال حاضر فقط به محتویات آنها نگاه میکنیم.
دستور less به شکلی مشابه (الگوی) زیر استفاده میشود:
پس از اجرا، برنامه less به ما اجازه میدهد در یک فایل متنی به جلو و عقب اسکرول کنیم. برای مثال، به منظور بررسی فایلی که تمام حساب های کاربری سیستم را تعریف میکند، دستور زیر را وارد کنید:
پس از اجرای برنامه less، میتوانیم محتویات فایل را مشاهده کنیم. اگر فایل طولانیتر از یک صفحه باشد، میتوانیم (آن را) به بالا و پایین اسکرول کنیم. برای خروج از less، کلید q را فشار دهید.
جدول زیر متداولترین دستورات صفحه کلید مورد استفاده توسط less را فهرست میکند.
جدول 3-3: دستورات less
دستور | عمل |
---|---|
Page Up یا b | اسکرول یک صفحه به سمت عقب |
Page Down یا space | اسکرول یک صفحه به سمت جلو |
کلید پیکانی بالا | اسکرول یک خط به سمت بالا |
کلید پیکانی پایین | اسکرول یک خط به سمت پایین |
G | رفتن به انتهای فایل متنی |
1G یا g | رفتن به ابتدای فایل متنی |
/characters | جستجوی رو به جلو برای وقوع بعدی characters |
n | جستجو برای وقوع بعدی جستجوی پیشین |
h | نمایش صفحه راهنما |
q | خروج از less |
less (جایگزین) more است
برنامه less به عنوان جایگزینی بهبود یافته برای یک برنامه قبلی یونیکس به نام more طراحی شده است. نام “less” یک بازی با عبارت “less is more” (به معنی “کمتر، بیشتر است”) – یکی از شعارهای معماران و طراحان نوگرا – است.
less در دسته برنامههایی موسوم به برنامه های “پیجر” (Pager) قرار میگیرد که امکان نمایش آسان اسناد متنی طولانی را به صورت صفحه به صفحه فراهم میکنند. در حالی که برنامه more فقط امکان رفتن به صفحههای بعدی را مهیا میکند، برنامه less اجازه صفحهبندی به جلو و عقب را فراهم میکند و همچنین دارای بسیاری از ویژگیهای دیگر است.
متن بالا بخشی از ترجمه کتاب The Linux Command Line (به فارسی: خط فرمان لینوکس) نوشته William Shotts است که نسخه اصلی آن از طریق وبسایت رسمی کتاب (https://linuxcommand.org) قابل دسترسی است. (فهرست مطالب کتاب خط فرمان لینوکس).