Cat

از ویکی فارسی اوبونتو
پرش به: ناوبری، جستجو
cat myfile.txt
cat myfile.txt

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


کاربردها

  • نمایش محتویات پرونده‌ها در پایانه
  • رونویسی پرونده‌ها
  • چسباندن چند پرونده به هم
  • ایجاد پرونده‌های جدید

نمایش محتویات پرونده‌ها در پایانه

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

$ cat filename

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

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

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

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

- --show-ends, -E, -e : این گزینه یک علامت $ انتهای هر خط قرار می‌دهد.

- --squeeze-blank, -s : این گزینه خط‌های خالی تکراری را پاک می‌کند و تنها یک خط خالی نمایش می‌دهد.

- --show-tabs, -T, -t : این گزینه نویسهٔ TAB را با ^t نمایش می‌دهد.

رونویسی پرونده‌ها

با این دستور می‌توان پرونده‌ها را نیز رونویسی کرد، به این صورت که دستور 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 
# or
$ > filename 

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

$ cat - > filename

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