Как да използвате Linux Cat команди (с примери)

Във всяка операционна система потребителите работят с файлове и извършват операции като създаване, изтриване и четене от файлове. В Linux ситуацията не е по-различна.

Докато можете да работите с файлове с помощта на графичния потребителски интерфейс в операционна система Linux, повечето потребители на Linux предпочитат да взаимодействат с операционната система от терминала.

Като такъв Linux има команди, които позволяват на потребителите да работят с файлове направо от терминала. Една такава команда е командата cat.

От страниците на ръководството на Linux, командата cat се използва за свързване на файлове и отпечатване на съдържанието на файла към стандартния изход. Страниците с ръководство за Linux са файлове с документация, които имат за цел да помогнат на потребителите да разберат командите на Linux и как се използват.

За да получите достъп до страницата с ръководство за която и да е команда на Linux, просто въведете man . Например, за да видите man страниците за командата cat, изпълнете следната команда в терминала:

man cat

За какво се използва командата cat

Както беше отбелязано по-рано, командата cat може да се използва за отпечатване на съдържанието на файл на екрана. Другата му функционалност е свързване на файлове и извеждане на тяхното съдържание. Това означава, че ако предоставите на командата cat няколко файла, тя ще свърже тяхното съдържание и ще изведе съдържанието им на екрана.

Казано по-просто, командата cat ще събере съдържанието в множество файлове и ще ги изведе на екрана. При такава операция обаче командата cat няма да създаде нов файл и оригиналните файлове, използвани в командата cat, ще останат непроменени.

Командата cat се използва и при пренасочване. Пренасочването се отнася до това как потребителите могат да променят източника на стандартен вход и дестинацията за стандартен изход и стандартна грешка. Стандартен вход, стандартен изход и стандартна грешка са стандартните потоци, използвани за комуникация в Linux.

По подразбиране стандартният вход е клавиатурата, а стандартният изход и стандартните грешки се показват на екрана по подразбиране.

Следователно пренасочването означава, вместо да получаваме стандартния вход от клавиатура, който е по подразбиране, можем да пренасочваме и да получаваме входа от файл или друг източник.

Когато става въпрос за стандартния изход и стандартната грешка, които се показват на екрана по подразбиране, чрез пренасочване, можете да запишете тези изходи във файл.

Синтаксис на командата cat

Синтаксисът на командата cat е както следва:

cat [OPTION]... [FILE]...

В страниците на ръководството на Linux всичко, посочено в квадратни скоби, не е задължително. Следователно в горния синтаксис не е задължително командата cat да има ОПЦИЯ или дори файл като аргумент. Може да има едно от двете, и двете или нито едно.

  Как да форматирате USB устройство към Fat32 на Linux

Многоточие(…) се използва, за да покаже, че един или повече от предходните операнди или аргументи са разрешени. Следователно командата cat може да приема една или няколко ОПЦИИ или ФАЙЛОВЕ.

FILE представлява файлове, които искаме командата cat да свърже и покаже. OPTION представлява флагове, които могат да се добавят към командата cat, за да се промени нейното поведение. Опциите, които могат да се използват с командата cat, са показани по-долу:

Командата cat работи, като взема файла(ите), предадени му, и извежда съдържанието им в стандартния изход, който е прозорецът на терминала. В случай че има няколко файла, предадени към него, тяхното съдържание се свързва и след това се показва в прозореца на терминала.

Командата cat също ще се държи различно в зависимост от флага, който й е подаден. Например, предаването на флага -n ще направи командата cat номер на всички изходни редове. В зависимост от това как искате да се държи, можете да подадете някой от флаговете, които могат да се използват с командата cat.

Как да използвате командата cat

За да използвате командата cat, просто въведете командата и името на файла(ите), които искате да свържете и прочетете например. За да изведете съдържанието на файл, наречен rainbow.txt, изпълнете следната команда.

cat rainbow.txt

Можете също да добавите флаг, за да промените поведението на командата cat. Например, можете да номерирате всички изходни редове с помощта на флага -n. В нашия пример по-горе можем да номерираме всички изходни редове в rainbow.txt, като изпълним следния ред:

cat -n rainbow.txt

Резултатите от двете команди са показани по-долу:

За да комбинирате флаговете или опциите, които могат да се използват с командата cat, просто ги напишете един след друг или можете да ги раздалечите. Което и да е от двете работи. Флагът -E, показан по-долу, се използва за добавяне на знак за долар ($) в края на изходните редове.

Това може да бъде полезно при показване на валутни стойности. Различните начини, по които можете да комбинирате няколко флага с командата cat, са показани по-долу:

За да свържете и покажете няколко файла с помощта на командата cat, просто напишете имената на файловете едно след друго, разделени с интервали. Например, за да свържете два файла с имена rainbow.txt и primary.txt, изпълнете следния ред:

cat rainbow.txt primary.txt

Резултатът от командата е показан по-долу

Двата файла rainbow.txt и primary.txt ще останат непроменени след тази операция. Имайте предвид, че редът, в който се появяват файловете в командата, определя как ще бъде показано съдържанието. Съдържанието се показва от първия файл до последния. Можете също да добавяте флагове, когато свързвате и показвате множество файлове, както е показано по-долу:

  Как да инсталирате бета драйвера на Nvidia на Linux

Последното нещо, което трябва да се отбележи за командата cat е, че в случай че към командата не е предоставен файл или е предоставено тире (-), командата cat чете от стандартния вход вместо от файл. Стандартният вход е клавиатурата.

Следователно командата cat просто ще покаже всичко, въведено от потребителя през клавиатурата. За да видите това на практика, изпълнете командата:

cat

Командата ще ви отведе до мигащ курсор, очакващ въвеждане от клавиатурата. Въведете произволен текст, след което натиснете Enter. Каквото и да въведете, ще бъде изведено в стандартния изход, както е показано по-долу:

Натиснете CTRL + C, за да излезете и да спрете въвеждането на командата cat.

Можем също да използваме командата cat, за да свържем и изведем съдържанието на всички файлове от определен тип в активната директория. Това се прави с помощта на звездичка

cat *.txt

заместващ знак. Например, за да изведем цялото съдържание на текстовите файлове (.txt) в определена директория, ще изпълним кода по-долу:

Резултатът от командата е показан по-долу:

Примери за команда cat

Освен стандартните употреби на командата cat, функционалността на командата cat може да бъде разширена чрез пренасочване. Както споменахме по-рано, командата cat се извежда на екрана на терминала по подразбиране.

Въпреки това чрез пренасочване можем да пренасочим изхода му към друг файл, вместо изходът да се показва на екрана.

Операторът за пренасочване на изхода в Linux е > (символът по-голямо от, наричан още шеврон).

cat rainbow.txt

Например, ако изпълним реда:

Съдържанието на rainbow.txt ще бъде изведено на екрана.

cat colors.txt > rainbow.txt

Въпреки това, ако изпълним

Съдържанието на rainbow.txt няма да се покаже на екрана. Вместо това те ще бъдат пренасочени и записани във файла colors.txt. Това може да бъде отличен начин за копиране на съдържание от един файл в друг.

Поведението по подразбиране на пренасочването на изхода в Linux е, че презаписва цялото съдържание във файла, към който пренасочваме. Например в горния пример цялото съдържание в rainbow.txt ще бъде презаписано от съдържанието от colors.txt. За да запазите съществуващото съдържание във файла, към който пренасочвате, и да добавите новото съдържание към него, използвайте >> при пренасочване.

Забележете по-долу, че colors.txt вече има цветовете, които бяха намерени в rainbows.txt след пренасочване на изхода от rainbows.txt към colors.txt с помощта на >>

За да разширим още повече функционалността на командата cat, можем да комбинираме пренасочването и поведението по подразбиране на командата cat за четене от стандартния вход, когато не е предоставен файл, за да използваме командата cat за създаване на файл и запис в него.

cat > dark.txt

Ако изпълните кода по-долу

  Как да архивирате настройките на Evolution Mail в Linux

Ще пренасочим към dark.txt. Тъй като не предоставихме файл, чието съдържание ще бъде пренасочено към dark.txt, командата cat ще очаква въвеждане от клавиатурата.

Затова въведете всеки текст, който искате да съхраните в dark.txt, натиснете Enter, за да отидете на следващия ред, и натиснете CTRL + D, когато сте готови, за да запазите това, което сте въвели във файла, към който пренасочвате.

Тъй като пренасочваме към файл, който не съществува, автоматично ще се създаде dark.txt и написаното от клавиатурата ще бъде запазено във файла. По този начин можем да използваме командата cat, за да създаваме файлове и да пишем в тях по време на тяхното създаване.

Резултатът от операцията е показан по-долу:

cat >> dark.txt

Котката може да се използва и за добавяне на текст в края на файл. Използвайки dark.txt, можем да добавим още цветове към него, като изпълним:

След това можете да добавите допълнителна информация, като въведете през клавиатурата и след това натиснете CTRL + D, за да запазите и добавите новото съдържание към dark.txt, както е показано по-долу:

cat file1 file2 file3 > file4

Командата cat може да се използва и за свързване на няколко файла в един файл. Синтаксисът за такава операция е показан по-долу

Съдържанието на file1, file2 и file3 ще бъде свързано заедно и записано във file4. Можете също да използвате >> в случай, че не искате да презапишете съдържанието във file4. Ако file$ не съществува, той ще бъде създаден автоматично.

Пример за това е показан по-долу:

cat colors.txt primary.txt > allColors.txt

За да напишем съдържанието на colors.txt и primary.txt във allColors.txt, ние изпълняваме

cat primary.txt >> colors.txt

Можете също да добавите съдържанието от един или няколко файла към друг файл, като използвате командата cat. Това става чрез използване на >> при пренасочване на изхода. Това избягва презаписването на това, което вече е съхранено в другия файл. Например, за да добавите съдържанието на primary.txt към colors.txt, изпълнете кода по-долу:

Резултатът от тази операция е показан по-долу:

Заключение

Командата cat е много полезна команда за Linux, която позволява на потребителите да свързват и показват съдържанието на файлове. Командата има множество флагове, които могат да бъдат добавени към нея, за да промените начина, по който се държи.

Чрез пренасочване функционалността на командата cat може да бъде значително разширена, позволявайки на потребителите да създават и копират файлове, да обединяват множество файлове в един файл и да добавят към съществуващ файл. За да научите повече за командата cat, посетете нейните man страници.

Можете също така да разгледате някои Linux команди за системни администратори.