Итак, сегодня, 23 апреля 2015 года, авторитет Internet Assigned Numbers постановил использовать порт 6379 для Redis, правда, действительно!
Я хочу, чтобы com · mem · o · оценил этот великолепный случай, добавив следующую строку в мой файл /etc/services
:
redis 6379/tcp
Каким будет лучший способ? К лучшему я имею в виду, конечно, следующее:
- Разумеется, новая строка должна быть вставлена в нужное место (например, в блоке Assigned Numbers, сразу после
gnutella-rtr 6347/udp
в моей системе). - Я рассмотрел использование различных текстовых редакторов, но он чувствует себя неуместно.
- В идеале решение должно быть одноразовым однострочным экземпляром
- Я могу представить себе
awk
script, который мог бы это сделать, но я ищу что-то большее, определенную je ne sais quoi
Обновить предложение re @Markus sed
: я боюсь, что проблема будет применяться к этому "патчу" в других системах, которые не обязательно должны иметь один и тот же файл /etc/services
, поэтому, расширяя в пункте № 1 выше, решение должно гарантировать, что, несмотря на специфику предшествующей услуги в файле, порядок сохраняется.
Обновление 2: несколько моментов, которые кажутся важными для состояния - а), хотя и не обязательные, длина решения (или отсутствие довольно), безусловно, является важной частью его элегантности (аналогично для внешних зависимостей (т.е. их отсутствия)); б) Мы предположили, что /etc/services
сортируется, но было бы интересно посмотреть, что произойдет, когда это не так; c) предположим, что у вас есть права root и будьте осторожны с этой командой rm / -rf
.