مهمترین کاربرد دستور cat در لینوکس
دستور cat
(برگرفته از کلمه concatenate و به معنی به هم پیوستن) یکی از پر استفاده ترین دستورات در سیستم عامل های Linux/UNIX میباشد.
این دستور فایل های مجزا یا چندگانه را ایجاد میکند همچنین محتویات فایل را نمایش داده و فایل ها را به هم الحاق و خروجی آن را در ترمینال یا فایل ریدایرکت (redirect) میکند.
در این مقاله ما قصد داریم تا مثال هایی از دستور cat را برای شما نمایش دهیم.
مهمترین کاربرد دستور cat
-
نمایش محتوای فایل
در مثال زیر محتوای فایل /etc/passwd/ نمایش داده میشود :
# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
….
-
نمایش محتوای چندین فایل در ترمینال
در مثال زیر محتوای 2 فایل test و test1 در ترمینال نمایش داده میشود :
# cat test test1
The Contents of test
The Contents of test1
-
ایجاد یک فایل با دستور cat
با دستور زیر فایل test2 را میسازیم :
# cat >test2
سپس منتظر تایپ کردن متن دلخواه میشود و سپس بعد از اتمام کلید های ctrl+d را فشار میدهیم (کلید Ctrl را نگه میداریم و کلید d را فشار میدهیم) تا خارج شود.
متن در فایل test2 نوشته خواهد شد سپس میتوانید با استفاده از دستور زیر محتوای فایل را ببینید :
-
استفاده از دستور cat با گزینه های more و less
اگر فایل بسیار طولانی باشد و در یک صفحه ترمینال جا نشود و صفحه به سرعت اسکورول (scrolls) بخورد ما میتوانیم از پارامترهای more و less به همراه دستور cat استفاده کنیم :
# cat song.txt | more
# cat song.txt | less
-
نمایش شماره خطوط در فایل
با استفاده از گزینه n- میتوانیم شماره خط های فایل song.txt را مشاهده کنیم :
# cat -n song.txt
1 “Heal The World”
2 There’s A Place In
3 Your Heart
4 And I Know That It Is Love
5 And This Place Could
6 Be Much
7 Brighter Than Tomorrow
8 And If You Really Try
9 You’ll Find There’s No Need
10 To Cry
11 In This Place You’ll Feel
12 There’s No Hurt Or Sorrow
-
نمایش $ در انتهای هر خط از فایل
همانطور که در زیر مشاهده میکنید با استفاده از گزینه e- به پایان تمامی خطوط فایل علامت $ اضافه کرده همچنین این علامت را در خطوطی که به عنوان فاصله استفاده شدند هم قرار داده. این آپشن برای تبدیل چندین خط به یک خط بسیار مفید است :
# cat -e test
hello everyone, how do you do?$
$
Hey, am fine.$
How’s your training going on?$
$
-
نمایش خطوط جدا شده با tab در فایل
در مثال زیر میبینیم که تمامی فضاهای tab در فایل با کاراکتر ‘I^’ پر شده است :
# cat -T test
hello ^Ieveryone, how do you do?
Hey, ^Iam fine.
^I^IHow’s your training ^Igoing on?
Let’s do ^Isome practice in Linux.
-
استفاده از Standard Output به همراه Redirection Operator
ما میتوانیم خروجی استاندار (Standard Output) از یک فایل را به فایلی دیگر با استفاده از علامت ‘<‘ (بزرگتر از) redirect کنیم. دقت کنید مثلا در مثال زیر محتویات test1 توسط محتویات فایل test کاملا overwitten میشود. یعنی محتویات فایل test1 پاک شده و محتویات test در آن جایگزین میشود :
# cat test > test1
-
افزودن (Append) خروجی standard با استفاده از Redirection Operator
افزودن محتویات فایل جدید به فایل قبلی بدون اینکه محتویات فایل پاک شود با استفاده از علامت ‘<<‘ (2 عدد علامت بزرگتر از) صورت میگیرد. در مثال زیر محتویات فایل test به انتهای محتویات فایل test1 اصطلاحا append (افزوده) میشود :
# cat test >> test1
-
Redirect کردن ورودی Standart با استفاده از Redirection Operator
زمانی که شما با استفاده از علامت ‘>>’ (کوچکتر از) ورودی استاندارد (Standard Input) ریدایرکت (Redirect) میکنیم در حقیقت محتویات فایل test2 را به عنوان یک ورودی برای یک کامند و خروجی به منظور نمایش در ترمینال استفاده میکند :
# cat < test2 This is test2 file.
Redirect کردن چندین فایل به یک فایل دستور زیر فایلی با نام test3 ایجاد میکند که شامل محتویات هر 3 فایل (test,test1,test2) میباشد :
# cat test test1 test2 > test3
-
چیدن (Sort) محتویات چندین فایل در یک فایل
دستور زیر فایل test4 را ایجاد میکند که خروجی دستور cat که به دستور sort پایپ ‘|’ شده است را به فایل جدید redirect میکند :
# cat test test1 test2 test3 | sort > test4
این مقاله کامند های اصلی که ممکن است شما را در استفاده مفید از دستور cat کمک کند به شما نمایش میدهد. البته برای کسب اطلاعات کامل تر و بهتر و همچنین گزینه های بیشتر توصیه میکنیم که صفحه man این دستور را بررسی کنید
برای توضیحات اضافی دوره ی محیط متن لینوکس خیلی میتونه به شما کمک کنه.