The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Новая версия языка программирования GNU Awk 5.0"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Новая версия языка программирования GNU Awk 5.0" +3 +/
Сообщение от Аноним84701 (ok), 13-Апр-19, 12:51 
>> А можно увидеть аналоги на cut(1) от осиляторов?
> А можно увидеть не искусственные примеры, а реальные?

Можно. Это были (подчищенные) примеры из history.


for i in $(seq 1 50); do $(time anon13377001; done|& tail -n +10 |awk '{sum+=$10} END {print "Sum;"sum, "Avg:"sum/NR}'

>> фильтруем дубликаты
> См. sort(1), uniq(1). И не надо рассказывать, что порядок строк важен, потому что в таком случае дубликаты будут идти подряд, и uniq их благополучно отфильтрует без сортировки. Если же они идут не подряд, значит
> порядок значения не имеет, и можно сортировать.

Яснопонятно. Л-логика 🙄

Во-первых, тогда уж сразу sort -u -k
Во-вторых, полей может быть > 1 (да-да, так тоже бывает) или же просто порядок строк может соотв. хронологии/порядку обращения к чему-то, но не совпадать с сортировочным критерием.
Чтобы далеко не ходить:


tail -n20 /tmp/anon/xtitle|tac
0x00c00004 ▏Midori     ▏ forum.opennet.ru
0x01200009 ▏URxvt      ▏ urxvt
0x00c00004 ▏Midori     ▏ forum.opennet.ru - "Судебный иск против Adblock Plus, манипулирующий изменением ..." (64)
0x01800003 ▏Claws-mail ▏ anonnet - Claws Mail 3.17.3
0x01200009 ▏URxvt      ▏ anon@anonim: ~
0x0260008a ▏Pale moon  ▏ Palmström: The Lambda Calculus for Absolute Dummies (like myself) - New Moon
0x01200097 ▏URxvt      ▏ urxvt
0x02400002 ▏mpv        ▏ Sugar Glider: The Airborne Marsupial - mpv
0x01200016 ▏URxvt      ▏ anon@anonim:/home/vids/pr0n
0x01200097 ▏URxvt      ▏ urxvt
0x01200016 ▏URxvt      ▏ anon@anonim:/home/vids/pr0n
0x01200009 ▏URxvt      ▏ anon@anonim: ~
0x012000b4 ▏URxvt      ▏ urxvt
0x01800003 ▏Claws-mail ▏ anonnet - Claws Mail 3.17.3
0x00c00004 ▏Midori     ▏ forum.opennet.ru - "Выпуск системного менеджера systemd 242" (165)
0x0220006f ▏Emacs      ▏ emacs@anonnet
0x0200000c ▏Geany      ▏ scanner.re - Geany
0x01200097 ▏URxvt      ▏ urxvt

Запись (xtitle) фокуса окон приложений в порядке обращения к ним. Как убрать дубликаты по WID (первое поле), сохранив порядок, с помощью sort/uniq?


>> используем второе поле из первого файла в качестве критерия выборки строк второго
> Если тебе постоянно приходится решать такие задачи, категорически рекомендую SQL.

См. список вверху, теперь берем актуальный список активных окон и с помощью того самого "искусственного" примера:


wmctrl -l | awk 'FNR==NR{id[$1]=$0} FNR<NR {if(id[$1]) print id[$1] }' /tmp/anon/winlist - | dmenu_alt_button  -l 30 -nf "#111111" -fn "Iosevka Slab:regular [...]

получаем косты^W кастомную переключалку между приложениями по горячей клавише, с поиском, фильтром, шахматессами и неплохой шустростью даже на старье десятилетней давности:

% time winswitch.sh
winswitch.sh  0,03s user 0,05s system 96% cpu 0,078 total

С нетерпением жду мастер-класс от анонима с использованием SQL  🙄
Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Новая версия языка программирования GNU Awk 5.0, opennews, 12-Апр-19, 21:12  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру