ویرگول
ورودثبت نام
امیر فکور
امیر فکور
خواندن ۱ دقیقه·۴ سال پیش

در ترمینال جدول درست کن

وقتی با ترمینال کار میکنیم گاهی متن داخل یک فایل یا خروجی یک دستور به اندازه کافی خوانا نیست. برای مثال محتوای یه فایل csv رو مشاهده کنید.

curl -s https://raw.githubusercontent.com/thinker-amir/rig2csv/main/users.csv


همانطور که در محتوای فایل csv مشخص است ستون ها با کارکتر ; از هم جدا شدند و در سطر اول مشخص شده که در هر سطر ستون ها شامل چه محتوایی هستند.

مشکل اینجاست که محتوای فایل csv خیلی خوانا نیست، به طور مثال اگر این فایل رو به نرم افزار اکسل وارد کنیم محتوای آن در جدولی زیبا و خوانا قابل مشاهده است. اما در ترمینال چه کاری از دستمون برمیاد؟

خوشبختانه دستوری به اسم column به کمکمون میاد. در ادامه با استفاده از این دستور محتوای فایل csv رو خواناتر در ترمینال چاپ میکنیم.

curl -s https://raw.githubusercontent.com/thinker-amir/rig2csv/main/users.csv | column -t -s ';'

مطابق این تصویر، خروجی ما خوانا تر از تصویر قبل است.

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

curl -s https://raw.githubusercontent.com/thinker-amir/rig2csv/main/users.csv

تا اینجای کار ما محتوای یک فایل csv رو با کمک دستور curl چاپ کردیم. آپشن s- برای سایلنت بودن(نمایش ندادن اطلاعات اضافه) استفاده شده.

بعد از اون با کارکتر پایپ یا "|" خروجی رو دادیم به دستور بعدی که column هست. t- برای اینکه مشخص کنیم به جدول نیاز داریم و آپشن s- هم برای مشخص کردن کارکتر جداکننده ستون هاست.

اما بریم سراغ فایل passwd

اگر خطوط اول فایل etc/passwd/ رو چاپ کنیم، خروجی مشابه تصویر زیر قابل مشاهده است.

cat /etc/passwd | head

حالا با دستور column خواناترش میکنیم.

cat /etc/passwd | head | column -t -s :


امیدوارم این نوشته برای شما مفید باشه. اگر سوال یا نظری دارید خوشحال میشم که همینجا برام کامنت بذارید.

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