ну, кошачья программа это, вероятно, один из наиболее часто используемых в оболочке Linux. Это очень просто, но в то же время очень практично. Иногда самые простые и базовые инструменты оказываются наиболее эффективными с точки зрения полезности. Его название происходит от conCATenate, отсюда и название, которое я решил поместить в эту статью, где я попытаюсь объяснить его тем, кто его еще не знает.
По сути, конкатенатор выходит за рамки того, что предполагает его название, он не только конкатенирует, он также может отображать содержимое текстового файла, а в сочетании с трубами он может быть еще более мощным и служить многоразовым. И я обобщу все эти базовые утилиты в этой статье с практическими примерами, чтобы вы могли увидеть это более интуитивно ...
к просто просмотреть содержимое файла, вы можете использовать следующую команду:
cat nombre_archivo cat /etc/passwd
Это покажет вам на экране. В случае зашифрованного файла или двоичного файла вы увидите, что он показывает вам странные символы или символы, не имеющие для вас особого значения.
Вы можете даже просматривать содержимое нескольких объединенных файлов в выводе, отсюда и его название:
cat nombre_archivo cat /etc/passwd /etc/passwd- /etc/hosts
Еще одна альтернативная возможность прикоснуться: используйте cat для создания файла:
cat > ejemplo.txt
При этом в интерактивном режиме открывается своего рода редактор, в котором вы можете ввести весь текст, который должен содержать созданный вами файл, или оставить его пустым. Когда вы закончите вводить то, что вам нужно, просто нажмите Ctrl + D выйти.
В том случае, содержимое файла может быть длинным и вы предпочитаете облегчить его навигацию и чтение, вы можете использовать для этого все меньше и больше:
cat manual.txt | more cat manual.txt | less
Это значительно упростит навигацию по отображаемому тексту. Кстати, для выйти нажмите Q как с мужчиной и т. д.
Очень интересно для разработчиков иs показать номер строки. Если вы хотите, чтобы cat пронумеровал строки содержимого файла, используйте параметр n. Это не изменит содержимое файла, в выводе будут отображаться только числа:
cat -n codigo.c
Кстати, если вы хотите сохранить пронумерованный текст как показано на экране, вы можете сделать это с помощью перенаправления. Например:
к просто просмотреть содержимое файла, вы можете использовать следующую команду:
cat -n codico.c > numerado.txt
Помните, что с> то, что вы делаете, это sзаменить содержание of numbered.txt в этом случае. То есть, если он не существовал, он создается с содержимым, но если он уже существовал, то, что было ранее, будет удалено, а новый контент будет сохранен. Чтобы избежать удаления вышеуказанного и добавления содержимого в конце, используйте >> вместо>.
Обратной стороной опции -n является то, что она нумерует все строки. Но если ты хочешь запретить нумеровать пустые, вы можете использовать -b:
cat -b /etc/hosts
Конечно, со всеми опциями вы можете использовать каналы и перенаправления на контент воронки и т. Д. И советую почитать мужчину-кошку, чтобы узнать больше. Существуют такие параметры, как -e для замены EoL (конец строки) на $, -T для вкладок, -s для подавления пустых повторяющихся строк и т. Д.
До сих пор видимые символы были просто показаны, но есть также много других невидимых, которые не видны. Чтобы показать им, используйте флаг v:
cat -v demo.odt
Вы можете использовать это для удалите содержимое файлов и оставьте их пустыми. Для этого вы можете использовать специальное устройство / dev / null, например:
cat /dev/null | demo.txt
В этом случае содержание / DEV / нуль он имеет значение null и перенаправляет его по конвейеру в текстовый файл demo.txt. То есть demo.txt заполнен нулевым содержимым, или, другими словами, он удален.
Вы также можете использовать это другое, чтобы иметь возможность вводите последовательности, пока не наберете EOL и он закрывается, то есть открывается как своего рода редактор, в котором можно писать все, что угодно. Очевидно, просто так бесполезно, но, например, можно все записать и сохранить в файл:
cat << EOL > hola
Обычно << сообщает оболочке, что вы собираетесь вводить строки, пока не введете метку, которой в данном случае является EOL, которая будет указывать на то, что вы достигли конца. Вы можете заменить EOL на STOP или как хотите.
А если вы работаете с разнородными системами, вы могли заметить, что текстовые файлы мира DOS / Windows используют символы конца строки, отличные от UNIX / Linux, поэтому текст может быть смещен при попытке просмотреть файл в той или иной системе. В * nix LF используется для завершения строки, в то время как в DOS / Windows используется CR / LF. Чтобы решить эту проблему, у вас есть два инструмента: dos2unix для преобразования из DOS / Windows в Unix и unix2dos для обратного. Но если вы не хотите их устанавливать, вы можете использовать для этого cat следующим образом:
cat dos.txt | sed "s/^M\{1,\}$//" | sed "$ s/^Z//" > archivo_convertido.txt cat unix.txt | sed "s/$/^M/" | sed "$ s/$/^Z/" > archivo_convertido.txt
Как вы видете, Кошачья прибыль много. Несмотря на свою простоту, он позволяет делать множество вещей. Кроме того, все, что вы здесь видели, - это не единственное. Вы можете представить себе множество других утилит и новых вещей, в которых он мог бы вам помочь. Не забудьте прочитать больше в руководстве:
man cat