Sorting and columns · Сортировка и столбцы
Putting lines in order
sortarranges lines alphabetically (or, with-n, as numbers):
sort -rreverses the order;sort -nis for lists of numbers.
Упорядочивание строк
sortупорядочивает строки в алфавитном порядке (или, с помощью-n, как числа):
sort names.txt
sort -rменяет порядок на обратный;sort -nподходит для списков чисел.
Removing duplicates
uniqremoves neighbouring repeated lines. Because it only looks at neighbours, you usuallysortfirst:
- Add
uniq -cto also count how many times each line appeared.
Удаление дубликатов
uniqудаляет повторяющиеся соседние строки. Поскольку он проверяет только соседей, обычно сначала используютsort:
sort names.txt | uniq
- Добавьте
uniq -c, чтобы также подсчитать, сколько раз появлялась каждая строка.
sort, then uniq · sort, затем uniq
uniq only sees neighbours — sort first, so the duplicates sit together. · uniq видит только соседей — поэтому сначала нужно выполнить sort, чтобы дубликаты оказались рядом.
Picking out columns
- Many files have columns separated by a character — a comma, a colon, a tab.
cutpulls out the columns you want.-dsets the delimiter,-fthe field:
- That takes the first field of each
name:ageline — the names.
Выбор колонок
- Во многих файлах колонки разделены символом — запятой, двоеточием, табуляцией.
cutизвлекает нужные вам колонки.-dзадает делитель,-f— fилд (поле):
cut -d : -f 1 people.txt
- Это извлекает первое поле каждой строки
name:age— имена.
Common mistakes
sortis alphabetical;sort -nsorts numbers correctly.cutneeds the right delimiter with-d.
Распространенные ошибки
sortсортирует алфавитно;sort -nправильно сортирует числа.cutтребует правильный разделитель вместе с-d.
Get a tidy, de-duplicated list of names. Pipe sort into uniq: sort names.txt | uniq. · Получите аккуратный список имен без дубликатов. Передайте вывод команды sort в uniq: sort names.txt | uniq.
people.txt has name:age on each line. Pull out just the names with cut -d : -f 1 people.txt. · Команда people.txt содержит имя name:age в каждой строке. Извлеките только имена с помощью команды cut -d : -f 1 people.txt.