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

У будь-якій операційній системі користувачі працюють з файлами та виконують такі операції, як створення, видалення та читання файлів. У Linux ситуація нічим не відрізняється.

У той час як ви можете працювати з файлами за допомогою графічного інтерфейсу користувача в операційній системі Linux, більшість користувачів Linux віддають перевагу взаємодії з операційною системою з терміналу.

Таким чином, Linux має команди, які дозволяють користувачам працювати з файлами прямо з терміналу. Однією з таких команд є команда cat.

З довідкових сторінок Linux команда cat використовується для об’єднання файлів і друку вмісту файлів у стандартний вихід. Сторінки керівництва Linux – це файли документації, які мають допомогти користувачам зрозуміти команди Linux і їх використання.

Щоб отримати доступ до сторінки довідки для будь-якої команди Linux, просто введіть man . Наприклад, щоб переглянути довідкові сторінки для команди cat, виконайте таку команду в терміналі:

man cat

Для чого використовується команда cat

Як зазначалося раніше, команду cat можна використовувати для виведення вмісту файлу на екран. Його інша функція полягає в об’єднанні файлів і виведенні їх вмісту. Це означає, що якщо ви надасте команді cat кілька файлів, вона об’єднає їхній вміст і виведе їхній вміст на екран.

Простіше кажучи, команда cat збирає вміст у кілька файлів і виводить їх на екран. Однак у такій операції команда cat не створюватиме жодного нового файлу, а вихідні файли, які використовуються в команді cat, залишаться незмінними.

Команда cat також використовується для перенаправлення. Перенаправлення стосується того, як користувачі можуть змінювати джерело стандартного введення та призначення для стандартного виведення та стандартної помилки. Стандартний вхід, стандартний вихід і стандартна помилка — це стандартні потоки, які використовуються для зв’язку в Linux.

За замовчуванням стандартним введенням є клавіатура, а стандартний вихід і стандартні помилки відображаються на екрані за замовчуванням.

Таким чином, перенаправлення означає замість отримання стандартного введення з клавіатури, яке є типовим, ми можемо перенаправити та отримати введення з файлу чи будь-якого іншого джерела.

Коли справа доходить до стандартного виводу та стандартної помилки, які відображаються на екрані за замовчуванням, через перенаправлення ви можете записати ці виходи у файл.

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

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

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

На довідкових сторінках Linux усе, що вказано в квадратних дужках, є необов’язковим. Таким чином, у наведеному вище синтаксисі команда cat не є обов’язковою для аргументу OPTION або навіть File. Він може мати одне з двох, обидва або взагалі жодного.

Три крапки (…) використовуються, щоб показати, що один або кілька попередніх операндів або аргументів дозволені. Таким чином, команда 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 залишаться незмінними. Зауважте, що порядок відображення файлів у команді визначає спосіб відображення вмісту. Вміст відображається від першого файлу до останнього. Ви також можете додати позначки під час об’єднання та відображення кількох файлів, як показано нижче:

І останнє, про що слід зауважити щодо команди cat, це те, що у випадку, якщо до команди не надано файл або надано дефіс (-), команда cat читатиме зі стандартного вводу замість файлу. Стандартним введенням є клавіатура.

Тому команда cat просто відображатиме все, що користувач вводить з клавіатури. Щоб переконатися в цьому на практиці, виконайте команду:

cat

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

Натисніть CTRL + C, щоб вийти та припинити передачу даних команді cat.

Ми також можемо використовувати команду cat для об’єднання та виведення вмісту всіх файлів певного типу в активний каталог. Це робиться за допомогою зірочки

cat *.txt

символ підстановки. Наприклад, щоб отримати весь вміст текстових файлів (.txt) у певному каталозі, ми б виконали наведений нижче код:

Результат команди показано нижче:

Приклади cat Command

Окрім стандартного використання команди 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

Якщо ви виконаєте наведений нижче код

Ми будемо переспрямовувати на 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. Ви також можете використовувати >>, якщо ви не хочете перезаписувати вміст у файлі4. Якщо file$ не існує, він буде створений автоматично.

Приклад цього показано нижче:

cat colors.txt primary.txt > allColors.txt

Щоб записати вміст colors.txt і primary.txt у allColors.txt, ми виконуємо

cat primary.txt >> colors.txt

Ви також можете додати вміст з одного або кількох файлів до іншого за допомогою команди cat. Це робиться за допомогою >> під час перенаправлення виводу. Це дозволяє уникнути перезапису того, що вже зберігається в іншому файлі. Наприклад, щоб додати вміст первинного.txt до colors.txt, виконайте наведений нижче код:

Результат цієї операції показано нижче:

Висновок

Команда cat — це дуже корисна команда Linux, яка дозволяє користувачам об’єднувати та відображати вміст файлів. Команда має кілька прапорців, які можна додати до неї, щоб змінити її поведінку.

За допомогою переспрямування функціональність команди cat може бути значно розширена, дозволяючи користувачам створювати та копіювати файли, об’єднувати кілька файлів в один файл і додавати до існуючого файлу. Щоб дізнатися більше про команду cat, відвідайте її сторінки man.

Ви також можете дослідити деякі команди Linux для системних адміністраторів.