Замените каждым IP-адресом [0-9\.]\{7,15\}
использование sed. IP-адрес состоит из чисел и точек, варьирующихся от 7 до 15 положений.
Замените каждый IP-адрес собой сопровождаемый новой строкой \n
, который в основном означает, что каждое устройство, комбинация IP будет иметь свою собственную строку.
echo "abc,10.11.13.14,def,1.2.3.4,geh,6.7.54.23" | sed 's/\([0-9\.]\{7,15\}\),/\1\n/g'
abc,10.11.13.14
def,1.2.3.4
geh,6.7.54.23
echo "abc,10.11.13.14,def,1.2.3.4,geh,6.7.54.23" | sed 's/\([0-9\.]\{7,15\}\),/\1\n/g' | grep def
def,1.2.3.4
Я наконец решил проблему.
Проблема состояла в том, что настроенное имя хоста в операционной системе не соответствовало фактическому имени хоста, как это было известно серверу DNS нашей компании, но вместо этого соответствовало имени хоста некоторого другого сервера.
Более точно, на сервере CentOS, где я пытался запустить Glassfish, команду hostname
произвел бы (изменившее доменное имя):
# hostname
mbpc05.my-domain.com
Однако mbpc05.my-domain.com
другой, полностью отличающийся, сервер в нашей компании.
Фактическое имя хоста моего сервера CentOS, как известный серверу DNS в нашей компании было mbpc09.my-domain.com
(т.е. 9
, нет 5
!).
Так, я дал следующую команду (как root
) на моем сервере CentOS для изменения имени хоста:
# hostname mbpc09.my-domain.com
Это зафиксировало его. Впоследствии, я мог запустить сервер Glassfish без любых проблем.
Я предполагаю, что то, что произошло, - то, что сервер Glassfish получил локальное имя хоста от операционной системы, затем попытался запустить сервер на том хосте - но так как то имя хоста принадлежало совершенно другому серверу, это попытается запустить экземпляр сервера Glassfish на удаленном сервере или чем-то как этот. Это, конечно, перестало работать. Сообщение об ошибке, произведенное Glassfish, очень сбивало с толку и не имело никакого отношения к фактической проблеме (я ожидаю, что некоторое исключение было выдано в коде Java, которые затем производят то сообщение - обработка ошибок могла быть более точной), который является, почему мне потребовалось некоторое время для решения его.:)