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

Ако използвате компютър с Linux, операциите са значително различни в сравнение с Windows и macOS. Получавате както графичен потребителски интерфейс, така и интерфейс на командния ред. Докато GUI изглежда лесният вариант за изпълнение на операции, CLI има своите предимства. Ако сте добре запознати с всички важни команди на терминала на Linux, можете да свършите нещата за нула време. Една от най-използваните команди в Linux е командата cat. Той идва предварително инсталиран като част от пакета coreutils на всички Linux дистрибуции и синтаксисът е еднакъв за всички дистрибуции. Въпреки това ще покажем как да използвате командата cat с някои практически примери в тази статия.

cat команда в Linux: обяснено (2023)

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

Какво представлява командата cat в Linux

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

Как да използвате команда cat: Синтаксис и опции

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

  Как да архивирате снимки от мобилно устройство на Linux с помощта на Daemon Sync

cat <опции> <име_на_файл(а)>

Някои от често срещаните опции за използване с командата cat са:

ОпцииОписание-nПоказване на номерата на редовете за всички редове-TПоказване на всеки табулатор във файла-eПоказване на края на всеки ред във файла-sОбединяване на последователни празни редове в края на файла като един-bПоказване само на непразни редове

Примери за команда cat в терминала на Linux

Преглед на един файл

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

cat <опция> <име_на_файл>

Преглед на множество файлове

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

cat <опция> <файл_1> <файл_2> <файл_3>

Показване на номера на редове

По подразбиране командата cat не показва номерата на редовете на съдържанието на файла, което извежда. За да покажете номерата на редовете, използвайте флага -n с командата cat в Linux:

cat -n <име_на_файл>

Създайте нов файл с команда cat

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

cat > <ново_име_на_файл>

Тук “>” е известен като оператор за презаписване и се използва за презаписване на всеки файл с ново съдържание. Тъй като файлът е напълно празен, каквото и да пишете, се записва във файла. Когато приключите с писането в новия файл, натиснете „ENTER“ и след това използвайте „CTRL + d“, за да излезете от подканата.

В примера по-горе можете да видите, че нов файл „test1.txt“ е създаден с помощта на командата cat и съдържанието на файла се показва от изхода на втората команда cat.

Обединете два файла в нов файл

Използвайки синтаксиса по-долу, можете дори да използвате командата cat, за да комбинирате два файла в един. Ще използваме оператора за добавяне („>>“), за да добавим съдържанието на първия файл в края на втория файл, като използваме командата по-долу.

  Как да контролирате sudo достъпа в Linux

котка <опция> <файл_1> >> <файл_2>

В горния пример съдържанието на файла „test1.txt“ се добавя в края на „test2.txt“ с помощта на командата cat. Новото съдържание може да бъде проверено с изхода на втората команда cat, където преглеждаме втория файл.

Копирайте съдържанието на един файл в друг

Можете дори да копирате съдържанието на файл в друг файл с помощта на командата cat, както е обяснено по-долу. Тук “>” се използва за презаписване на съдържанието на file_1 към file_2.

котка <файл_1> > <файл_2>

В горния пример сме заменили съдържанието на файла „test1.txt“ със съдържанието на файла „test2.txt“, използвайки оператора за презаписване.

Показване на невидими знаци

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

cat -E <име_на_файл>

Това ще маркира края на всеки ред със символа “$”. За да отпечатате разделите вместо четири празни интервала, използвайте или флага -T, според синтаксиса, показан по-долу:

cat -T <име_на_файл>

Това ще отпечата всички табулатори като „^I“. За да отпечатате всички други невидими знаци, използвайте флага -v с командата cat, както е показано в синтаксиса по-долу:

cat -v <име_на_файл>

Както можете да видите в примера по-горе, всички краища на редове са маркирани със символа “$”, а разделите са маркирани със знак “^I”.

Комбинирайте няколко празни реда като един

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

cat -s <име_на_файл>

Преглед на съдържанието на файла в обратен ред (команда tac)

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

tac <име_на_файл>

Сортиране на изходното съдържание на файлове

В Linux можете да комбинирате две или повече команди с помощта на shell redirectors. Те пренасочват изхода на една команда към входа на следващата команда. Можете да използвате оператора за презаписване (>) и оператора за добавяне (>>), които са известни като I/O shell redirectors.

  Как да организирате снимки на Linux с Digikam

Съществува и втори тип пренасочване на обвивка, известен като пренасочване на обвивка, който се използва за изпълнение на две или повече команди едновременно. Това означава, че изходът на една команда ще бъде пренасочен към следващата команда като вход. Тъй като изпълнението на командата следва определена конструкция, такава конструкция или концепция е известна като конвейер. Операторът за канал ( | ) създава конвейер за изпълнение на тези команди в определена последователност.

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

cat <опции> <име_на_файл> | вид

В горния пример, вместо да отпечата съдържанието на файла „test3.txt“, командата cat изпраща съдържанието на командата за сортиране, която след това го сортира по азбучен ред и накрая отпечатва сортирания изход.

Преглед на големи файлове с помощта на команда cat

Понякога дори система с големи спецификации може да заеква при показване на съдържанието на голям файл. За такива големи файлове трябва да използвате командата less и командата cat заедно с оператора pipe. Тъй като командата less зарежда само част от файла наведнъж, тя не изразходва много ресурси. Можете да превъртите нагоре или надолу, за да посетите другите части на файла, като използвате клавишите със стрелки. Синтаксисът за използване на командата less с командата cat е:

котка <име_на_голям_файл> | по-малко

В горния пример, когато изпълните командата съгласно горния синтаксис, файлът не се отпечатва на същия терминален ред, вместо това показва съдържанието на файла в нов терминален изглед, както е показано на втората снимка. Тук можете да превъртате текста с помощта на клавишите със стрелки. За да стигнете до дъното на текста, използвайте „GG“, а за да стигнете до горната част на текста, използвайте „gg“. За да излезете от новия терминален изглед, натиснете “q”.

Практически примери за команда cat

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