Cat

از ویکی فارسی اوبونتو
نسخهٔ تاریخ ‏۱ آذر ۱۳۹۹، ساعت ۱۸:۲۹ توسط EsmaeelE (بحث | مشارکت‌ها) (کپی کردن فایل ها)
پرش به: ناوبری، جستجو

دستور cat مخفف کلمه Concatenate به معنی به هم پیوستن، الحاق کردن، چسباندن است. با اینکه کاربرد اصلی این دستور چسباندن چند فایل به هم است، ولی بیشتر برای نمایش محتویات یک فایل بر روی خروجی استاندارد (stdout) استفاده میشود.

از این دستور برای کار های زیر میتوان استفاده کرد:

  • نمایش محتویات فایل ها بر روی صفحه
  • کپی کردن فایل ها
  • چسباندن چند فایل به هم
  • ساختن فایل جدید

نمایش محتویات فایل ها بر روی صفحه

cat myfile.txt
cat myfile.txt

برای نمایش فایل بر روی صفحه میتوان از دستور cat بدون هیچ ارگومان به این صورت استفاده کرد:

cat filename

برای نمایش شماره خط ها میتوان از دو اپشن b- و n- استفاده کرد.

  • b- : این گزینه برای نمایش شماره خط ها بغیر از خط های خالی استفاده میشود.
  • n- : این گزینه برای نمایش شماره خط ها حتی خط های خالی استفاده میشود.

همچنین این دستور گزینه های دیگری نیز دارد:

  • e- یا E- یا show-ends-- : این گزینه یک علامت $ انتهای هر خط قرار میدهد.
  • s- یا squeeze-blank-- : این گزینه خط های خالی تکراری را پاک میکند و تنها یک خط خالی نمایش میدهد.
  • t- یا T- یا show-tabs-- : این گزینه کاراکتر TAB را با ^I نمایش میدهد.

کپی کردن فایل ها

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

$ cat file1 > file2 


اخطار:

اگر از گزینه های دستور cat استفاده کرده باشد ممکن است فایل به درستی کپی نشود

برای مثال: اگر از گزینه n- استفاده کنید در فایل مقصد هم شماره خط ها نمایش داده میشود. چون دقیقا همان خروجی که باد در صفحه نمایش داده شود را در فایل مقصد می‌نویسد.

البته بعضی مواقع نیز مفید است. مثلا می‌خواهید خط های خالی تکراری فایل خود را پاک کنید،

می‌توانید از دستور cat به همراه گزینه s- استفاده کنید و خروجی را در یک فایل دیگر بریزید.

$ cat -s file1 > file2 

چسباندن چند فایل به هم

دستور cat میتواند چندین فایل را به عنوان ورودی بپذیرد و به ترتیب در صفحه نمایش دهد. cat file1 file2 file3

البته میتوان مانند قبل خروجی را به یک فایل دیگر هدایت کرد . بدین ترتیب میتوان چندین فایل را به هم چسباند.cat file1 file2 file3 > file4

همچنین در هنگام ادغام میتوان از ورودی استاندارد نیز استفاده کرد.برای مثال:cat file1 - file2 > file3

این دستور ابتدا فایل file1 را میخواند و در فایل مقصد که همان file3 هست مینویسد و بعد منتظر میماند تا شما در ترمینال بنویسید، بعد از اینکه نوشتن شما تمام شد، با فشردن کلید های Ctrl+D میتوان فراید را از سر گرفت و در ادامه فایل file2 را بعد ار نوشته های شما در فایل file3 مینویسد.

ساختن فایل جدید

در اکثر مثال های بالا یک فایل جدید ایجاد می‌شود.

همچنین برای ایجاد فایل جدید خالی هم می‌توان به این صورت عمل کرد.

$ cat > filename 
$ > filename 


همچنین می‌توان از دستور cat به اینصورت استفاده کرد که ورودی را از کیبورد بخواند و در خروجی بنویسد

$ cat - > filename 

همچنید میتوانید از دستورات tac و bat هم دیدن کنید.