cat
100%

Командная строка · Урок 7

cat

Научитесь безопасно выводить, объединять и перенаправлять содержимое файлов командой cat.

После определения типа файла следующий шаг — прочитать его содержимое. Команда cat выводит и соединяет содержимое файлов; её имя сокращено от concatenate.

Просмотр содержимого

Простейший вариант выводит файл прямо в терминал:

$ cat myfile.txt

Команда записывает весь файл в стандартный вывод. Это удобно для короткого текста, но длинный файл может слишком быстро прокрутиться.

Какая команда выводит весь myfile.txt в терминал?

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

Получив несколько файлов, cat читает их в порядке аргументов и выводит один за другим:

$ cat dogfile birdfile

Сначала появится dogfile, затем birdfile. Чтобы сохранить объединённый вывод в новый файл, перенаправьте стандартный вывод через >:

$ cat dogfile birdfile > animals

До запуска cat оболочка создаёт animals или обнуляет существующий файл, а затем направляет туда вывод. Не используйте входной файл как это назначение: он может быть очищен до чтения.

Какая команда записывает part1, затем part2 в новый или заменяемый файл whole?

Запись терминального ввода в файл

Без входного файла cat читает стандартный ввод. Вместе с > это позволяет набрать текст в терминале и записать его:

$ cat > newfile.txt

Введите текст, затем нажмите Ctrl+D, чтобы передать конец файла и вернуться в оболочку. Если newfile.txt уже существует, > удалит прежнее содержимое.

Для добавления используйте >>:

$ cat >> notes.txt

Вы хотите дописать текст в конец существующего notes.txt. Какая команда начинает операцию без обнуления файла?

Форматирование вывода

Полезные параметры:

  • -n: нумеровать все строки с 1.
  • -b: нумеровать только непустые строки.
  • -s: сжимать несколько пустых строк в одну.
  • -A: показывать непечатаемые символы, табуляции и окончания строк.

Примеры:

$ cat -n script.sh
$ cat -b notes.txt
$ cat -s messy.txt

Какая команда нумерует только непустые строки вывода notes.txt?

Выбор просмотрщика для длинных файлов

Используйте cat, когда нужен весь вывод сразу. Для длинного файла удобнее less: он позволяет прокручивать, искать и выходить, не заполняя терминал.

$ less /var/log/syslog

Какая команда лучше подходит для интерактивного чтения длинного журнала?

Урок завершён

Вы завершили cat

Теперь вы умеете выводить и объединять содержимое через cat, безопасно выбирая перенаправление.

  • Показывать полное содержимое короткого файла.

  • Объединять файлы в выбранном порядке.

  • Осознанно заменять или дописывать назначение.

  • Нумеровать или упрощать строки вывода.

  • Выбирать less для интерактивного чтения.

Сохраните прогресс

Создайте бесплатный аккаунт, чтобы сохранить этот урок и продолжить на любом устройстве.

Создать бесплатный аккаунт
Следующий Урок
Назад к Командная строка