Как использовать awk для создания индекса слов в файле?

У меня проблема с моей домашней работой. Мне нужно создать скрипт оболочки с помощью awk . Сценарий будет выводить только слова в файле в алфавитном порядке, а после слова : после этого пробел, затем список разделенных запятыми строк, на которых появляется слово. Например:

 C CB 92A A BFG How Are You B Are CC Are . .B 

Должен быть

 A: 3, 4 Are: 5, 6, 8 B: 6, 10 BFG: 5 C: 1, 7, 8 CB: 2 How: 5 You: 5 

Я пробовал это, но это не сработало

 #!/bin/awk -f { split($0, char); print $0; sort; } 

  • загрузка файла в массив, обработка второго файла с использованием данных в aray
  • Как получить общее количество строк и уникальных счетчиков в одной строке
  • Как извлечь подмаски из строки и записать их в файл?
  • Ошибка awk if-then-else
  • редактирование столбца, чтобы каждая строка получала другое число
  • что считаются старыми и мощными командами?
  • Удалять заголовки и содержимое из плоского файла, если они находятся ниже определенного количества строк
  • Как переносить значения, разделенные запятыми, на следующую строку, не нарушая другие поля, используя awk или ksh
  • One Solution collect form web for “Как использовать awk для создания индекса слов в файле?”

    Пытаться:

     $ awk ' { gsub(/[^[:alpha:] ]/,""); for(i=1;i<=NF;i++) { a[$i] = a[$i] ? a[$i]", "FNR : FNR; } } END { for (i in a) { print i": "a[i]; } }' file | sort A: 3, 4 Are: 5, 6, 8 B: 6, 10 BFG: 5 C: 1, 7, 8 CB: 2 How: 5 You: 5 
    Interesting Posts

    Монитор FullHD lcd читается как 1024×768 CRT, проблема с неправильным разрешением

    chmod рекурсивное разрешение на тысячи файлов

    Сценарий оболочки работает в KDE и Terminal

    Маршрутизируемый маршрутизатор OpenWrt не подключается через USB к последовательному кабелю

    Нет такого файла или каталога для файлов с акцентированными символами

    аппаратный ускоренный оконный менеджер

    Скрыть панель запуска Docky (с этой док-станции) в Linux под управлением Ubuntu-Xenial

    Попытка настроить изображение спасения Fedora – как мне это сделать?

    Регулярное изменение / оператор (foo | bar) в GNU или BSD Sed

    Очистите экран и покажите баннер

    Установив Debian на один раздел, смогу ли я обновить его в будущем?

    Используйте sed и sed самостоятельно, чтобы выполнить подстановку в строке, начинающейся с определенной строки, только если!

    Итерация через массив и добавление новых элементов в массив

    Есть ли инструмент (!), Чтобы перечислять назначенные значения subuid и subgid для пользователей?

    Как возобновить видеоролики YouTube в VLC?

    Linux и Unix - лучшая ОС в мире.