آموزش لینوکس

در این وبلاگ مطالبی در خصوص سیستم عامل لینوکس به اشتراک گذاشته می شود.

آموزش لینوکس

در این وبلاگ مطالبی در خصوص سیستم عامل لینوکس به اشتراک گذاشته می شود.

دستور cat

سه شنبه, ۵ شهریور ۱۳۹۸، ۰۱:۰۹ ب.ظ

این دستور یکی از متداول ترین دستورات خط فرمان و برگرفته از عبارت concatenate می باشد. مهتمرین عمل‌کرد دستور cat ، نمایش محتوای فایل‌های متنی می باشد. کاربرد های این دستور را با بیان مثال‌هایی بررسی می کنیم.

 

* نمایش محتوای یک فایل با کمک دستور cat

& با استفاده از دستور زیر محتوای فایل linux.txt در خروجی نمایش داده می شود.

cat linux.txt

Linux Was Created In 1991 By Linus Torvalds.

Linux Kernel Is Written In The C programming Language.

Linux Is Open Source Operating System.

Popular Linux Distributions Include Debian , Fedora And Ubuntu.

Linux Is Multi Task & Multi User.

& دستور زیر محتوا فایل passwd را از مسیر etc/ نمایش می دهد. (فایل passwd شامل اطلاعاتی در خصوص کاربران سیستم می باشد)

cat /etc/passwd

 

* نمایش محتوای چند فایل با دستور cat

& برای نمایش محتویات دو یا چند فایل بصورت همزمان ، می توان اسامی فایل‌ها را بعد از دستور cat وارد نمود.

cat  linux.txt  city.txt

Linux Was Created In 1991 By Linus Torvalds.

Linux Kernel Is Written In The C programming Language.

Linux Is Open Source Operating System.

Popular Linux Distributions Include Debian , Fedora And Ubuntu.

Linux Is Multi Task & Multi User.

tehran

AMOL

shiraz

 

Gorgan

pardis

 

& با دستور زیر محتوای همه فایل‌های مسیر جاری نمایش داده می شود.

cat *

 

& برای نمایش محتوای فایل‌های مسیر etc/ که دارای پسوند conf. می‌باشند ، بصورت زیر عمل می شود.

cat /etc/*.conf

 

* ساخت فایل با استفاده از دستور cat

cat > country.txt

& با اجرای دستور بالا ، خط فرمان در حالتی قرار می گیرد که کاربر می تواند ، متن خود را تایپ نموده و در انتها با استفاده از کلیدهای Ctrl+d فایل را ذخیره نماید. (کلید های Ctrl+u ، خط فعلی را پاک می کند)

 

* ایجاد نسخه کپی از فایل با دستور cat

cat linux.txt > linux_copy.txt

& دستور بالا از فایل linux.txt یک کپی با نام linux_copy.txt ایجاد می کند.

 

* ادغام چند فایل با استفاده از دستور cat

& با دستور زیر محتوای فایل های linux.txt , city.txt , country.txt در قالب یک فایل با نام test_full.txt تجمیع می شوند.

cat  linux.txt  city.txt  country.txt > test_full.txt

 

* افزودن عبارت متنی به انتهای یک فایل با دستور cat

& برای این کار می‌توان از کاراکتر << استفاده کرد. با اجرای دستور زیر ، خط فرمان در حالتی قرار می گیرد که کاربر می تواند ، متن خود را تایپ نموده و در انتها با استفاده از کلیدهای Ctrl+d فایل را ذخیره نماید.

cat  >> city.txt

 

& می‌توان محتوای یک فایل را در انتهای فایلی دیگر درج نمود. با دستور زیر محتوای فایل test.txt به انتهای فایل city.txt افزوده می شود.

cat  test.txt >> city.txt

 

* درج شماره خطوط در نمایش محتوای فایل با دستور cat

&  این کار توسط سوییچ n قابل انجام می باشد.

cat -n city.txt

     1     tehran

     2     AMOL

     3     shiraz

     4    

     5     Gorgan

     6     pardis

     7     noor

 

نکته : با اجرای دستور بالا ، تغییری در محتوای فایل city.txt ایجاد نمی‌شود. و فقط بر روی خروجی دستور ، بنوعی فیلتر درج شماره اعمال می گردد.

نکته : همانطور که در خروجی مشخص است ، به ازای هر خط یک شماره اختصاص می یابد. (حتی خط خالی) . با استفاده از سوییچ b می‌توان از درج شماره خطوط خالی صرف نظر کرد.

cat -b city.txt

     1     tehran

     2     AMOL

     3     shiraz

 

     4     Gorgan

     5     pardis

     6     noor

 

* نمایش محتوای فایل‌های حجیم با دستور cat

& با استفاده از pipe و گزینه less می‌توان فایل‌های حجیم بیش از یک صفحه را پیمایش نمود.

cat /var/log/messages | less

نکته : با استفاده از گزینه less ، کاربر قادر خواهد بود تا فایل را بصورت خط به خط ، صفحه به صفحه و در هر چهار جهت پیمایش نماید. برای خروج از این حالت می‌توان از کلید q استفاده کرد. همچنین عمل جستجو ، با استفاده کارکتر / و تایپ عبارت مورد نظر امکانپذیر می باشد. دستور بالا را بصورت زیر نیز می توان بکار برد.

less /var/log/messages

 

& برای پیمایش فایل‌های حجیم از گزینه more نیز می‌توان استفاده کرد.

cat /var/log/messages | more

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

more /var/log/messages

 

* ارسال فایل به چاپگر جهت چاپ با دستور cat

& چاپ فایل city.txt با دستور زیر قابل انجام می باشد.

cat city.txt | lpr                 

 

* مرتب سازی خروجی اجرای دستور cat

& با استفاده از pipe و گزینه sort ، محتوای فایل‌ها در خروجی بصورت مرتب شده نمایش داده می شوند.

cat city.txt | sort

 

AMOL

Gorgan

noor

pardis

shiraz

tehran

نکته : در این حالت تغییری در فایل ایجاد نمی‌ گردد و فقط خروجی بصورت مرتب شده نمایش داده می شود.

 

* جستجو در محتوای یک فایل با دستور cat

& برای جستجوی یک عبارت در محتوای یک فایل ، می‌توان از گزینه grep بهره برد. (سوییچ n سبب درج شماره می شود)

cat -n city.txt | grep noor   

     7     noor

 

* نمایش دو خط ابتدای یک فایل با دستور cat

& از فیلتر head برای این کار می‌توان استفاده نمود.

cat -n city.txt | head -2                 

     1     tehran

     2     AMOL

 

* نمایش سه خط انتهای یک فایل با دستور cat

& با استفاده از گزینه tail این تغییر در خروجی ایجاد می شود.

cat -n city.txt | tail -3                 

     5     Gorgan

     6     pardis

     7     noor

 

& برای نمایش خطوط دو و سه می‌توان از ترکیب فیلترهای tail , head استفاده کرد.

cat -n city.txt | head -3 | tail -2

     2     AMOL

     3     shiraz

 

* نمایش محتوای یک فایل بجز خطوط دو ، سه و چهار با دستور cat

& از گزینه sed برای عدم نمایش این خطوط استفاده می شود.

cat -n city.txt | sed 2,4d   

     1     tehran

     5     Gorgan

     6     pardis

     7     noor

 

* نمایش محتوای فایل بصورت حروف بزرگ با دستور cat

& با استفاده از دستور زیر ، خروجی با حروف بزرگ نشان داده می شود.

cat city.txt | tr a-z A-Z

TEHRAN

AMOL

SHIRAZ

 

GORGAN

PARDIS

NOOR                 

 

* نمایش محتوای فایل بهمراه تغییر یک عبارت با دستور cat

& در خروجی عبارت FARS جایگزین AMOL می شود.

cat city.txt | tr -s AMOL FARS

tehran

FARS

shiraz

 

Gorgan

pardis

noor

 

* حذف چند کاراکتر در نمایش محتوای فایل با دستور cat

& در اجرای دستور زیر ، کاراکترهای AL از خروجی حذف می شوند.

cat  city.txt |tr -d AL

tehran

MO

shiraz

 

Gorgan

pardis

noor

 

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

& برای اینکار می‌توان از دستور زیر استفاده نمود.

cat -n city.txt | tac                 

     7     noor

     6     pardis

     5     Gorgan

     4    

     3     shiraz

     2     AMOL

     1     tehran

 

* نمایش محتوای فایل بصورت برعکس با دستور cat

& با استفاده از گزینه rev می‌توان فایل‌ها را در خروجی بصورت برعکس نمایش داد.

cat city.txt | rev

narhet

LOMA

zarihs

 

nagroG

sidrap

roon

 

* شمارش محتوای یک فایل با دستور cat

& با استفاده از فیلتر wc بترتیب تعداد خط ، کلمه و کاراکتر های یک فایل بدست می آید.

cat linux.txt | wc

      7      39     239                 

* مثال :

& لیست IP هایی که به سیستم وصل شده‌اند را مشخص نمایید.

cat -n  /var/log/audit/audit.log | grep USER_LOGIN | grep res=success | tac | tr a-z A-Z > /home/masih/LoginList.txt

cat /home/masih/LoginList.txt

 25945            TYPE=USER_LOGIN MSG=AUDIT(1566976562.033:1082455): PID=24835 UID=0 AUID=0 SES=177551 SUBJ=SYSTEM_U:SYSTEM_R:SSHD_T:S0-S0:C0.C1023 MSG='OP=LOGIN ID=0 EXE="/USR/SBIN/SSHD" HOSTNAME=10.47.52.25 ADDR=192.168.20.20 TERMINAL=/DEV/PTS/2 RES=SUCCESS'

 25843            TYPE=USER_LOGIN MSG=AUDIT(1566975293.580:1082353): PID=22654 UID=0 AUID=0 SES=177538 SUBJ=SYSTEM_U:SYSTEM_R:SSHD_T:S0-S0:C0.C1023 MSG='OP=LOGIN ID=0 EXE="/USR/SBIN/SSHD" HOSTNAME=10.47.52.25 ADDR=192.168.25.30 TERMINAL=/DEV/PTS/1 RES=SUCCESS'

 25812            TYPE=USER_LOGIN MSG=AUDIT(1566975156.390:1082322): PID=22556 UID=0 AUID=0 SES=177537 SUBJ=SYSTEM_U:SYSTEM_R:SSHD_T:S0-S0:C0.C1023 MSG='OP=LOGIN ID=0 EXE="/USR/SBIN/SSHD" HOSTNAME=10.47.52.25 ADDR=192.168.50.33 TERMINAL=/DEV/PTS/0 RES=SUCCESS'

توضیح دستور :

سوییچ n  : شماره خطوط در خروجی درج می شود.

فایل audit.log : تراکنش های مربوط به ورود به سیستم در این فایل قرار دارد.

grep USER_LOGIN : این فیلتر خطوطی که دارای عبارت USER_LOGIN هستند را در خروجی قرار می دهد.

grep res=success : توسط این فیلتر فقط Login موفق در خروجی قرار می گیرد.

tac : این گزینه سبب نمایش خروجی بصورت انتها به ابتدا می شود. (در مرور تراکنش ها، بررسی آخرین تراکنش ها در اولویت می باشد)

tr a-z A-Z  :‌خروجی را به حروف بزرگ تبدیل می نماید.

نهایتا خروجی دستور در مسیر /home/masih/ و با نام LoginList.txt ذخیره می شود.

۹۸/۰۶/۰۵
عیسی اسداله پور

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی