$ awk -F'|' '/Sangamithra/ {print $3 "|" $2 "|" $1}' input.txt
Sangamithra|First|Teju
(Обратите внимание, что ваша вторая строка в желаемом выводе нигде не появляется во входном файле)
Пояснение
Флаг -F
означает, что awk видит |
в данном случае как разделитель полей.
Секция /Sangamithra/
означает, что на выходе будут только входные строки, содержащие этот шаблон.
раздел {print $3 "|" $2 "|" $1}
является основным сценарием. Это распечатывает третье, второе и первое поля ввода (в указанном порядке ), разделенные |
символами.
Ни одна из реализаций updatedb, которые я видел, не смотрит на цель символических ссылок и даже не сохраняет тип файла. Так что нет, информация не является базой данных.
Хранение целей символических ссылок в форме, удобной для поиска, было бы значительным изменением формата базы данных. Вы можете повторно использовать код обхода каталога из updatedb, но часть о формате базы данных и эквивалентном интерфейсе locate -будет совершенно новой работой.