Команда «Вырезать» в Linux: описание полезных приложений

Linux и другие UNIX-подобные операционные системы имеют множество инструментов для обработки текста в командной строке. Без этих инструментов (полный список команд Linux можно найти здесь) нам пришлось бы записывать вывод одной команды и вводить его в следующую, чтобы мы могли изолировать те биты, которые нам действительно нужны, а не перенаправлять весь вывод в неожиданную команду. резать Команда позволяет нам вырезать нужные нам части, чтобы мы могли передать их в нужные команды.

резать Команда, также являющаяся частью требований соответствия POSIX, очень полезна в нескольких различных случаях. Она не так надежна, как некоторые другие команды, но сама по себе очень полезна. резать команда используется, как следует из названия, для вырезания текста. Я полагаю, что чаще всего он используется для вырезания информации из текстовых таблиц, таких как файл CSV или выходных данных. пс.

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

Общий синтаксис резать как следует.

вырезать ВАРИАНТ… [FILE]…

В таком виде это не очень полезно, но мы рассмотрим пару часто используемых вариантов.

Сначала мы рассмотрим вырезание текста из таблицы с помощью табуляции между столбцами.

Cut -f 1,5 -d ‘:’/etc/passwd

Эта команда извлекает первый и пятый столбцы, поля идентификатора пользователя и описания пользователя, из /etc/пароль файл. Здесь мы использовали флаг, чтобы указать нужные нам поля. Эта опция принимает значения, разделенные запятыми, или диапазоны в форме хугде Икс является нижней границей и й верхний.

Кроме того, вы можете комбинировать эти параметры, как показано ниже. опция предназначена для указания значения разделителя или разделителя. В разных файлах для этого используются разные значения. /и т. д/В файле passwd используется двоеточие, а в файле CSV используются запятые, поэтому очень полезно иметь возможность указать разделитель, отличный от используемого по умолчанию для табуляции.

Cut -f 1-3,7 -d ‘:’/etc/passwd

Это обеспечит поля с первого по третье, а также седьмое.

ПРИМЕЧАНИЕ. Вывод некоторых программ не всегда однороден и иногда содержит пустые поля, что может привести к резать вести себя неожиданно. Примером этого является использование пробелов для заполнения вместо символов табуляции. Это не редкость. Иногда вы можете справиться с этим, передав вывод команды через тр до резать.

tr -s ””

тр команда является командой транспонирования. Он позволяет легко менять местами символы в файле, подобно СЭД, но не столь гибкий. тр команда -s (или –сжать) Опция сжимает все пробелы в один пробел. Это очень эффективно при использовании в сочетании с резать поскольку он обеспечивает гораздо более последовательное разграничение табличных данных.

Иногда вам нужно иметь возможность изменить разделитель по сравнению с тем, который используется во входном файле, и это то, что –выходной разделитель опция используется для.

Cut -f 1,5 -d ‘:’ –output-delimiter=$’\t’ /etc/passwd

Здесь мы указали табуляцию в качестве разделителя. Потому что мы не можем легко передать символ табуляции (нажатие клавиши Tab обычно сообщает bash о попытке автозаполнения)мы используем $’\т’ для передачи символа табуляции. Эта последовательность говорит bash избегать того, что находится в кавычках, и \ т — это стандартная escape-последовательность для символа табуляции.

И это основы использования резать. Есть еще несколько функций, но вы вряд ли будете использовать их в повседневной работе.

Дайте нам знать, есть ли какие-либо инструменты, которые вы хотели бы осветить, или есть какие-то, о которых вы хотели бы рассказать более подробно.

Читайте также: Полный список команд Linux от А до Я

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *