[SOLVED] Сортировка USE'ов в строке (сортировка слов в строке)
NETZMB 28 Августа, 2009 - 12:33
Собственно, после долгого пользования gentoo, в make.conf и portage.use накопилось довольно много USE флагов, расположенных в произвольном порядке. Хочется как-нибудь их отсортировать в строке, чтобы было удобней проверять наличие нужного флага.
Т.е. например строки до сортировки
user@host ~ % cat /etc/make.conf |grep USE USE="mmx sse sse2 3dnow dbus hal 3dnowext X alsa opengl vim-syntax jpeg png zsh-completion ldap png -arts"
после сортировки:
user@host ~ % cat /etc/make.conf |grep USE USE="3dnow 3dnowext alsa dbus hal jpeg ldap mmx opengl png png sse sse2 vim-syntax X zsh-completion -arts"
Как видите, сортировка например, выявила лишний флаг "png", т.е. это потенциально полезная штука, да и просто упорядоченные USE красиво выглядят
Так вот, как пользователи Gentoo решают эту проблему? Желательно, с помощью стандартных утилит, созданных специально для этой цели.
PS: emerge например, сам каким-то образом сортирует USE'ы
»
- Для комментирования войдите или зарегистрируйтесь
есть софтина ufed. это
есть софтина ufed. это редактор use-флагов с ncurses-интерфейсом. после сохранения изменений сама сортирует флаги в make.conf
мой make.conf выглядит так:
Спасибо! Интересная штука, но
Спасибо!
Интересная штука, но не совсем то, что требовалось
.
Сортировка по алфавиту --- не единственный (и не бесспорно лучший) способ упорядочивания USE-флагов.
По теме вопроса могу порекомендовать изучить руководство по
gawk
(GNU awk).:wq
--
Live free or die
Цитата: Сортировка по
Не обязательно именно по алфавиту. Хотелось-бы сортировать USE'ы так, как это делают команды семейства portage.
Ну, awk я иногда пользуюсь, но это не совсем то, что хотелось-бы использовать для этой задачи. Наверняка функция сортировки юсов есть в библиотеке, которой пользуется portage. Так вот, мне интересно, есть ли некая команда-wrapper, которая даёт ей пользоваться из командной строки с возможностью конвейера. Чтобы её из vim запустить как фильтр, например.
emerge сортирует очень просто
emerge сортирует очень просто - все что с "-" в конце, остальное - по аски. Это можно сделать и скриптом, думаю специальных утилит нету.
Спасибо. Значит как-нибудь
Спасибо.
Значит как-нибудь напишу собственный скрипт. В принципе, задача довольно проста.
Если выйдет нечто красивое и читабельное, выложу сюда.
Всем спасибо за внимание, проблема в принципе, решена.