Команда cat (сокращение от «concatenate» или «объединить») является одной из наиболее часто используемых команд в операционных системах Linux/Unix. команда cat позволяет нам создавать один или несколько файлов, просматривать содержимое файла, объединять файлы и перенаправлять вывод в терминале или файлах.
Общий синтаксис команды Cat
$ cat [OPTION] [FILE]...
1. Отобразить содержимое файла
В приведенном ниже примере будет выведено на терминал содержимое файла /etc/passwd.
# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash bin:x:1:1:bin:/bin:/sbin/nologin narad:x:500:500::/home/narad:/bin/bash
2. Просмотр содержимого нескольких файлов в терминале
В приведенном ниже примере он отобразит содержимое файла test и test1 в терминале.
$ cat тест тест1
Всем привет Привет, мир
3. Создание файла с помощью команды Cat
Создание пустого файла под названием файл test2 с помощью приведенной ниже команды.
# cat >test2
После этого система ожидает ввода от пользователя. Введите нужный текст и нажмите CTRL+D, чтобы выйти. Текст будет записан в файл test2. Вы можете просмотреть содержимое файла с помощью следующей команды cat.
# cat тест2
всем привет, как поживаете?
4. Использование команды Cat с опциями more и less
Если файл с большим количеством содержимого не помещается на один экран и прокручивается очень быстро, мы можем использовать параметры more и less с помощью команды cat, как показано ниже.
# cat song.txt | more # cat song.txt | less
5. Отображение номеров строк в файле с помощью cat
С помощью опции -n вы можете видеть номера строк файла song.txt на терминале.
# cat -n song.txt
1 "Heal The World" 2 There's A Place In 3 Your Heart 4 And I Know That It Is Love 5 And This Place Could 6 Be Much 7 Brighter Than Tomorrow 8 And If You Really Try 9 You'll Find There's No Need 10 To Cry 11 In This Place You'll Feel 12 There's No Hurt Or Sorrow
6. Отображение $ в конце строки и вместо пробелов между абзацами
С помощью опции -e можно вывести «$» в конце каждой строки, а также если есть какой-либо пробел между абзацами. Эта опция полезна для сжатия нескольких строк в одну строку.
# cat -e test
всем привет, как поживаете?$ $ Привет, я в порядке.$ Как продвигается твое обучение?$ $
7. Отображение нескольких файлов одновременно
В приведенном ниже примере у нас есть три файла test, test1 и test2, и мы можем просматривать содержимое этих файлов в порядке следования имен файлов.
В качестве разделителя имен файлов нужно использовать «;» (точка с запятой).
# cat test; cat test1; cat test2
This is a test file This is the test1 file. This is test2 file.
8. Перенаправление стандартного вывода оператора cat.
Мы можем перенаправить стандартный вывод файла в новый файл или существующий файл с символом «>» (больше). Осторожно, существующее содержимое test1 будет перезаписано содержимым файла test.
# cat test> test1
9. Добавление содержимого файла в существующий файл
Добавляется в существующий файл с помощью символа «>>» (двойное больше). Здесь содержимое тестового файла будет добавлено в конец файла test1.
# cat test >> test1
10. Перенаправление нескольких файлов в один файл
Это создаст файл с именем test3, и весь вывод будет перенаправлен во вновь созданный файл.
# cat test test1 test2> test3
11. Сортировка содержимого нескольких файлов в одном файле
Это создаст файл test4, и вывод команды cat будет передан для сортировки, а результат будет перенаправлен во вновь созданный файл.
# cat test test1 test2 test3 | sort> test4