Форум программистов, компьютерный форум, киберфорум
Shell, Bash
Войти
Регистрация
Восстановить пароль
Другие темы раздела
Bash Ограничение длины результата содержимого каталога https://www.cyberforum.ru/ shell/ thread2712222.html
Здравствуйте! Необходимо реализовать следующую команду: вывести на экран содержимое каталога /usr/share. Ограничьте длину результата 30 символами. Не могу понять какой командой ограничить длину...
Bash Планирование в bash
Создать расписание выполнения заданий так, чтобы каждый день в какое то определённое время создавался сжатый архив данных одной директории и перемещался в папку архивов другой директории. Надо...
Кириллица в bash Bash
Привет всем. Использую imagemagick и хочу наложить русский текст на фото командой: convert -font font.ttf -fill '#7f7278' -pointsize 55 -gravity center -draw "text 0,0 'Машенька'" white.png...
Bash Шаблон скрипта CYGWIN для последовательного выполнения команд кто-нибудь может посоветовать простой шаблон скрипта для последовательного выполнения с pipe нескольких вычислительных команд с аргументами и с записью результатов в файл. Команды отдельно есть... https://www.cyberforum.ru/ shell/ thread2710251.html
Bash Bash: не понятен момент https://www.cyberforum.ru/ shell/ thread2710219.html
# Создаем временную директорию: firefox_tempdir="$( mktemp -d ~/firefox_tempdir.XXXXXX )"; # Качаем архив.. # Указываем путь до скаченного ахрива:...
Проверка настройки сети в Ubuntu через скрипт Bash Bash
Прошу помощи в решении проблемы, в создании скриптового файла для проверки настройки сети в Ubuntu Необходимо проверить два адреса: ping 8.8.8.8 ping ya.ru Вопрос: какие команды добавить,...
Bash bash на весь экран
Здравствуйте. Подскажите, как сделать, чтобы при запуске терминала в LXDE он сразу запускался на весь экран? До этого в убунте я добавлял строку wmctrl -r :ACTIVE: -b...
Bash Определить mac адреса всех доступных dhcp серверов Доброго времени суток. Подскажите пожалуйста как получить список mac адресов всех доступных dhcp серверов в локальной сети. https://www.cyberforum.ru/ shell/ thread2709410.html
Bash Ищу аналог matplotlib для bash https://www.cyberforum.ru/ shell/ thread2708886.html
Есть аналог matplotlib для bash?
Bash Создание Dockerfile для запуска nano Само задание: создать Dockerfile для образа, который будет удовлетворять следующим свойствам: 1. Базовый образ – ubuntu:16.04 2. Установлен текстовый редактор nano 3. Переменная окружения... https://www.cyberforum.ru/ shell/ thread2707382.html
Bash Удаление строк с НЕуникальным идентификатором https://www.cyberforum.ru/ shell/ thread2707266.html
Доброго времени суток. Возникла необходимость сделать выборку строк из списка файлов, оставив только последнюю версию имени файла в списке. Что-то типа ...
Bash weather+clock #!/bin/bash # # Author: Twily 2014 # unhide_cursor() { printf "\ehttps://midzer.github.io/wttr-switcher/ curl -s 'ru.wttr.in/{Коркино,Челябинск,Калачёво}?format=3' toilet -f future... https://www.cyberforum.ru/ shell/ thread2705915.html
2 / 2 / 0
Регистрация: 16.10.2020
Сообщений: 2
16.10.2020, 18:00  [ТС] 0

awk и удаление лишних строк

16.10.2020, 18:00. Просмотров 1086. Ответов 4
Метки (Все метки)

Ответ

Спасибо за Ваш ответ, nezabudka, и ответ sonar200.

Возник ряд вопросов касательно кода с сортировкой:
BEGIN {PROCINFO["sorted_in"]="@ind_str_asc"}
- вот эта магия совершенно непонятна. Символ @ в awk встречал разве что... касательно выборок по паттерну вида @/foo/ - жёсткий поиск, насколько помню в отличии от /foo/ - нахождения в строке.
NR==FNR {A[$0]; next}
- как понимаю тут формируется одномерный массив содержащий в первом столбце всю строку $0 пока NR - номер строки, не сравняется с общим количеством строк FNR на входе. Какой-то странный аналог while без while, как мне видется.
{a=$0; NF-=1; if(!($0 in A)) D[a]}
- тут объявляется переменная a, равная всей строке $0; теперь непонятно - зачем мы отнимаем у строки единицу в значении кол-ва полей?; последняя конструкция этой строки чуточку яснее "если строка $0 не в массиве A, то" что - что это значит? Спрашиваю, потому как подобная конструкция была в моём вопросе, значащая дубль. То есть выходит, что это создаёт дубль строки?
END {for(i in D) print i}
- опять непонятно. "для каждой i в D(БОЖЕЧКИ! АБЯСНИТЕ!) печатай i"
file{,}
- что значат фигурные скобки с запятой применительно к названию?

Как говорил ранее - можете направить на чтение документации, если в доке есть примеры - спасёт время и нервы, если нет - пожалуйста объясните, хотя бы своими словами.

P.S. в итоге из 5 строчек у меня счёт на понимание меньше единицы.

Вернуться к обсуждению:
awk и удаление лишних строк
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.10.2020, 18:00

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Удаление лишних строк таблицы, парсер PS
Здравствуйте! Имеется скрипт парсера некой веб - страницы, содержащую таблицу. Таблица извлечена из...

Программное удаление лишних строк таблицы DataGridView
Имеется программа. При считывании из файла таблица заполняется таким образом (рис.1). При нажатии...

Упражнение 1.18 Удаление лишних пробелов, табуляций и строк
Упражнение 1.18. Напишите программу, которая будет в каждой вводимой строке заменять стоящие подряд...

Удаление лишних пустых строк и пробелов на конце строки
open(FIL,"azaz.txt"); my @s =<FIL>; close FIL; for ($i=0; $i <= 9; $i++) { if ( length( $s ) >...

Удаление лишних строк в Excel которые далеко внизу
Файл весит 7-8мб , а должен по идее 2,5-3+- раньше примерно так и весил, если не меньше увидел что...

Поиск начала таблицы на листе и удаление лишних строк над таблицей
Добрый день! Пожалуйста, подскажите, каким образом можно организовать поиск начала таблицы с...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.