خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

نحوه استفاده از دستورات tr و fmt برای دستکاری متن در لینوکس

دستورات tr و fmt که مخفف ترجمه و فرمت هستند، دو مورد از مهمترین دستورات دستکاری متن در لینوکس هستند.

لینوکس دستکاری و پردازش متن را با دستورات بسیار آسان می کند. ابزارهای خط فرمان مانند tr و fmt به شما کمک می‌کنند فایل‌های متنی را مستقیماً از ترمینال خود تغییر، قالب‌بندی و تغییر دهید.

در این مقاله به نحوه استفاده از دستورات tr و fmt برای قالب بندی متن در موارد استفاده مختلف می پردازیم. بنابراین tr و fmt چیست؟ و چگونه از آنها استفاده می کنید؟

فرمان tr چیست؟

دستور tr مخفف کلمه، translate است و به کاربر کمک می کند تا کاراکترهای خاصی را در یک فایل متنی حذف یا جایگزین کند. معمولاً در کنار سایر دستورات استفاده می شود و با گرفتن ورودی استاندارد، انجام عملیات روی آن و نوشتن نتیجه در خروجی استاندارد کار می کند.

نحو دستور tr

نحو اصلی دستور tr به صورت زیر است:

 tr [option]... SET1 [SET2]

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

\\ Backslash
\b Backspace
\t Horizontal tab
\v Vertical tab
[:alnum:]All letters and digits
[:alpha:]All letters
[:blank:]Horizontal whitespaces
[:digit:]All digits
[:lower:]All lowercase characters
[:punct:]All punctuation characters
[:space:]Horizontal or vertical whitespace characters
[:upper:]All uppercase letters

نحوه استفاده از دستور tr

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

مطلب مرتبط:   نحوه استفاده از دستور ip برای مدیریت شبکه ها در لینوکس

برای این مثال، یک فایل متنی ایجاد کنید: muo.txt. محتوای فایل این خواهد بود:

MakeUseOf. Technology, Simplified! 1234

جایگزینی کاراکترها با استفاده از دستور tr

برای این کار، کاراکترهایی را که می خواهید جایگزین کنید و با چه چیزی جایگزین می کنید، مشخص کنید. به عنوان مثال، اگر می خواهید اولین کاراکترهای هر کلمه را با ABCD جایگزین کنید، این دستور را اجرا کنید:

cat muo.txt | tr MTS1 ABCD

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

نتیجه:

AakeUseOf. Bechnology, Cimplified! D234

یک متن را از حروف کوچک به بزرگ تغییر دهید

برای انجام این کار، یکی از دستورات زیر را اجرا کنید:

cat muo.txt | tr a-z A-Z
cat muo.txt | tr [:lower:] [:upper:]

نتیجه:

MAKEUSEOF. TECHNOLOGY, SIMPLIFIED! 1234

یک متن را از حروف بزرگ به حروف کوچک تغییر دهید

برای انجام این کار، یکی از دستورات زیر را اجرا کنید:

cat muo.txt | tr A-Z a-z
cat muo.txt | tr [:upper:] [:lower:]

نتیجه:

makeuseof. technology, simplified! 1234

Spaces را با Tab ها جایگزین کنید

برای جایگزینی تمام فضاها با تب ها، این دستور را اجرا کنید:

cat muo.txt | tr [:space:] '\t'

نتیجه:

MakeUseOf. Technology, Simplified! 1234

از طرف دیگر، اگر می خواهید فاصله ها را با کاراکتر خط جدید جایگزین کنید – برای چاپ هر کلمه در یک خط جداگانه – “\t” را با “\n” جایگزین کنید.

حذف کاراکترها با استفاده از دستور tr

برای حذف کاراکترها از گزینه -d در کنار دستور tr استفاده کنید. به عنوان مثال، اگر می خواهید حرف “e” را از هر کلمه در فایل muo.txt حذف کنید، این دستور را اجرا کنید:

cat muo.txt | tr -d 'e'

نتیجه:

MakUsOf. Tchnology, Simplifid! 1234

تمام نمادهای نقطه گذاری را حذف کنید

اگر می‌خواهید تمام علامت‌های نقطه‌گذاری یک فایل را بدون تعیین نماد حذف کنید، از گزینه -d در کنار دنباله تفسیر شده استفاده کنید، [:punct:]:

cat muo.txt | tr -d [:punct:]

نتیجه:

MakeUseOf Technology Simplified 1234

حذف تمام ارقام با استفاده از tr

برای حذف تمام ارقام یک فایل متنی، این دستور را اجرا کنید:

cat muo.txt | tr -d [:digit:]

نتیجه:

MakeUseOf. Technology, Simplified!

با استفاده از گزینه tr Complement

دستور tr با گزینه -c همراه است که اساساً خلاف عملیات اصلی را انجام می دهد. بیایید از دستور قبلی به عنوان مثال استفاده کنیم. اگر گزینه مکمل را به این دستور اضافه کنید، تمام کاراکترهایی که رقم نیستند را حذف می کند. نگاهی بیاندازید:

cat muo.txt | tr -cd [:digit:]

نتیجه:

1234

فرمان fmt چیست؟

دستور fmt یک ابزار قالب بندی متن ساده است که می توانید از آن برای چاپ و پردازش متن در لینوکس استفاده کنید. همچنین می توانید از دستور برای قالب بندی پاسخ های ایمیل استفاده کنید.

مطلب مرتبط:   نحوه برنامه ریزی مشاغل یک بار در لینوکس با استفاده از در

برای دریافت راهنمایی خط فرمان در مورد دستور fmt، صفحه دستی آن را با اجرای زیر بررسی کنید:

man fmt

دستور fmt نحو

سینتکس اصلی دستور fmt این است:

fmt [-WIDTH] [OPTION] [FILE]

نحوه استفاده از دستور fmt

برای این مثال، یک فایل به نام file.txt ایجاد کنید و متن زیر را اضافه کنید:

Technology, Simplified
We're tech enthusiasts on a mission to teach the world how to use and understand the tech in their lives.

با استفاده از دستور Default fmt

دستور fmt پیش‌فرض متن را بهینه می‌کند و آن را با فرمت خواناتر چاپ می‌کند. عرض پیش فرض دستور fmt 75 ستون است. این دستور را اجرا کنید تا عملیات پیش فرض fmt را امتحان کنید:

fmt file.txt

نتیجه:

Technology, Simplified We're tech enthusiasts on a mission to teach the
world how to use and understand the tech in their lives.

عرض یک متن را تغییر دهید

برای تغییر عرض فایل از گزینه -w استفاده می کنید. نحو به این صورت است:

fmt -w N filename

برای تغییر عرض فایل به 20 ستون، این دستور را اجرا کنید:

fmt -w 20 file.txt

نتیجه:

Technology,
Simplified We're
tech enthusiasts on
a mission to teach
the world how to
use and understand
the tech in their
lives.

تقسیم خطوط طولانی متن

برای تقسیم خطوط طولانی، از گزینه -s استفاده کنید. آن را امتحان کنید:

fmt -s file.txt

نتیجه:

Technology, Simplified
We're tech enthusiasts on a mission to teach the world how to use and
understand the tech in their lives.

سطر اول هر پاراگراف را تورفتگی کنید

برای برجسته کردن خط اول هر پاراگراف با تورفتگی آن، از گزینه -t استفاده کنید. این نحو است:

fmt -t filename.

بیایید آن را امتحان کنیم:

fmt -t file.txt

نتیجه:

Technology, Simplified
    We're tech enthusiasts on a mission to teach the world how to use and
understand the tech in their lives.

tr و fmt: دستورات مفید دستکاری متن

tr و fmt قالب‌بندی و پردازش متن را با عملیات متفاوتی که ارائه می‌دهند آسان و خودکار می‌کنند. لینوکس و سایر سیستم‌عامل‌های مبتنی بر یونیکس تعداد زیادی دستورات دستکاری متن را برای هر نیاز قالب‌بندی متن شما ارائه می‌دهند. شما فقط باید بدانید که آنها چیست و چگونه از آنها استفاده کنید.

مطلب مرتبط:   نحوه خواندن و اجرا از یک فایل با دستور منبع لینوکس