?? Subway Surfers - Official Launch Trailer
Оглавление:
- Как использовать команду «Вырезать»
- Как вырезать по полю
- Как резать на основе разделителя
- Как дополнить выбор
- Как указать выходной разделитель
- Как вырезать по байтам и символам
- Вырезать Примеры
- Получить список всех пользователей
- Посмотреть 10 наиболее часто используемых команд
- Вывод
В системах Linux и Unix доступно множество утилит, позволяющих обрабатывать и фильтровать текстовые файлы. Вырезать - это утилита командной строки, которая позволяет вырезать части строк из указанных файлов или переданных данных и выводить результат в стандартный вывод. Его можно использовать для вырезания частей строки по разделителю, позиции байта и символу.
В этом руководстве мы покажем вам, как использовать команду Linux Cut, на практических примерах и подробных объяснениях наиболее распространенных параметров резки.
Как использовать команду «Вырезать»
Синтаксис команды cut следующий:
cut OPTION……
При использовании команды вырезать вы должны использовать один и только один из следующих параметров:
-
-f
(--fields=LIST
) - Выбрать, указав поле, набор полей или диапазон полей. Это наиболее часто используемый вариант.-b
(--bytes=LIST
) - Выбрать, указав байт, набор байтов или диапазон байтов.-c
(--characters=LIST
) - Выбрать, указав символ, набор символов или диапазон символов.
Другие варианты:
-
-d
(--delimiter
) ---delimiter
разделитель, который будет использоваться вместо разделителя «TAB» по умолчанию.--complement
- дополнить выбор. При использовании этого параметра вырезать будут отображаться все байты, символы или поля, кроме выбранного.-s
(--only-delimited
) - по умолчанию cut будет печатать любую строку, не содержащую символа разделителя. При использовании этой опции вырезать не будут печатать строки, не содержащие разделителей.--output-delimiter
- по умолчанию используется входной разделитель в качестве выходного разделителя. Эта опция позволяет вам указать другую строку выходного разделителя.
Команда cut может принимать ноль или более входных имен FILE. Если ФАЙЛ не указан, или если ФАЙЛ -
-
, cut будет считывать стандартный ввод.
Аргумент LIST, передаваемый опциям
-f
,
-b
и
-c
, может быть целым числом, несколькими целыми числами, разделенными запятыми, диапазоном целых чисел или несколькими целочисленными диапазонами, разделенными запятыми. Каждый диапазон может быть одним из следующих:
-
N
-е поле, байт или символ, начиная с 1.N-
от N-го поля, байта или символа, до конца строки.NM
от N-го до M-го поля, байта или символа.-M
от первого до M-го поля, байта или символа.
Как вырезать по полю
Команда Cut в основном используется для отображения выбранных полей из каждой строки файлов или стандартного ввода. Если не указан, по умолчанию используется разделитель «TAB».
В приведенных ниже примерах мы будем использовать следующий файл. Все поля разделены вкладками.
test.txt
245:789 4567 M:4540 Admin 01:10:1980 535:763 4987 M:3476 Sales 11:04:1978
Для отображения 1-го и 3-го полей вы должны использовать:
cut test.txt -f 1, 3
245:789 M:4540 535:763 M:3476
Или, если вы хотите отобразить с 1-го по 4-е поле:
cut test.txt -f -4
245:789 4567 M:4540 Admin 535:763 4987 M:3476 Sales
Как резать на основе разделителя
Чтобы вырезать на основе разделителя, используйте опцию
-d
за которой следует разделитель, который вы хотите использовать.
Например, чтобы отобразить 1-е и 3-е поля, используя «:» в качестве разделителя, введите:
cut test.txt -d ':' -f 1, 3
245:4540 Admin 01 535:3476 Sales 11
Вы можете использовать любой отдельный символ в качестве разделителя. В следующем примере мы используем символ пробела в качестве разделителя и печатаем 2-е поле:
echo "Lorem ipsum dolor sit amet" | cut -d ' ' -f 2
Как дополнить выбор
Для дополнения списка полей выбора используйте опцию
--complement
. Это напечатает только те поля, которые не выбраны с опцией
-f
.
Следующая команда напечатает все поля кроме 1-го и 3-го:
cut test.txt -f 1, 3 --complement
4567 Admin 01:10:1980 4987 Sales 11:04:1978
Как указать выходной разделитель
Чтобы указать выходной разделитель, используйте параметр
--output-delimiter
. Например, чтобы установить выходной разделитель на
_
вы должны использовать:
cut test.txt -f 1, 3 --output-delimiter='_'
Как вырезать по байтам и символам
Прежде чем идти дальше, давайте сделаем различие между байтами и символами.
Один байт составляет 8 битов и может представлять 256 различных значений. Когда был установлен стандарт ASCII, в нем были учтены все буквы, цифры и символы, необходимые для работы с английским языком. Таблица символов ASCII имеет 128 символов, и каждый символ представлен одним байтом. Когда компьютеры стали всемирно популярными, технологические компании начали вводить новые кодировки символов для разных языков и для языков, которые содержат более 256 символов, простое сопоставление 1 к 1 было невозможно. Это приводит к различным проблемам, таким как совместное использование документов или просмотр веб-сайтов, и необходим новый стандарт Unicode, который может работать с большинством мировых систем письма. UTF-8 был создан для решения этих проблем. В UTF-8 не все символы представлены 1 байтом. Символы могут быть представлены от 1 байта до 4 байтов.
В следующих примерах мы используем символ
ü
который занимает 2 байта.
Используйте опцию
-b
(
--bytes
), чтобы вырезать часть строки, указав позицию байта.
Выберите 5-й байт:
echo 'drüberspringen' | cut -b 5
b
Выберите 5-й, 9-й и 13-й байты:
echo 'drüberspringen' | cut -b 5, 9, 13
bpg
Выберите диапазон от 1-го до 5-го байта:
echo 'drüberspringen' | cut -b 1-5
drüb
На момент написания этой статьи версия cut, включенная в GNU coreutils, не имела возможности вырезать по символам. При использовании опции
-c
cut ведет себя так же, как и при использовании опции
-b
.
Вырезать Примеры
Команда обрезки обычно используется в сочетании с другими командами через трубопровод. Вот несколько примеров.
Получить список всех пользователей
Выходные данные команды
getent passwd
передаются в
cut
который печатает 1-е поле, используя
:
качестве разделителя.
getent passwd | cut -d ':' -f1
Посмотреть 10 наиболее часто используемых команд
В следующем примере cut используется для удаления первых 8 байтов из каждой строки вывода команды
history
.
history | cut -c8- | sort | uniq -c | sort -rn | head
Вывод
К настоящему времени вы должны хорошо понимать, как использовать команду Linux cut. Хотя команда cut очень полезна, она имеет некоторые ограничения. Он не поддерживает указание более одного символа в качестве разделителя и не поддерживает несколько дециметров.
отрезать терминалКоманда Echo в Linux с примерами
Команда echo является одной из самых основных и часто используемых команд в Linux. Аргументы, передаваемые echo, выводятся на стандартный вывод.
Команда curl в linux с примерами
Curl - это утилита командной строки для передачи данных с или на сервер, предназначенная для работы без взаимодействия с пользователем. В этом руководстве мы покажем вам, как использовать инструмент скручивания, на практических примерах и подробных объяснениях наиболее распространенных вариантов скручивания.
Linux date команда с примерами
Команда date отображает или устанавливает системную дату. Чаще всего он используется для печати даты и времени в разных форматах и для расчета будущих и прошлых дат.