LINUX.ORG.RU

Regex для Sed

 ,


0

1

Всем добрый день! Ребята помогите переконвертировать регулярку для sed-a

\/(\w*?(\.\w*?)+)\/
и как его теперь можно в sed использовать. Регулярка в path просто выбирает доменное имя, то есть: путь
/var/www/sites/some.site.com/bla/blal 
вернет some.site.com
/var/www/sites/site.com/bla
вернет site.com
Или же есть еще какие варианты? За ранее Спасибо!

обязательно sed?

можно так, например

echo "/var/www/sites/some.site.com/bla/blal " | awk 'BEGIN { FS = "/" } ; { print $5 }'
some.site.com

Debasher ★★★★★
()
Ответ на: обязательно sed? от Debasher

Не поможет, так как папок до домена, может быть больше или меньше, так что привязаться к 5-ому элементу смысла нет!

afteroot
() автор топика
$ echo '/var/www/sites/some.site.com/bla/blal ' | python3 -c 's = input(); print([ ".".join((frag[-2], frag[-1])) for frag in [ ss.split(".") for ss in s.split("/") ] if len(frag) > 1 ][0])'
site.com
$ echo '/var/www/sites/site.com/bla' | python3 -c 's = input(); print([ ".".join((frag[-2], frag[-1])) for frag in [ ss.split(".") for ss in s.split("/") ] if len(frag) > 1 ][0])' 
site.com
Deleted
()
Ответ на: комментарий от afteroot

Хотя, отлично отрабатывает! Спасибо Огромное!!! Немного поменял для своих нужд!

DIR='/var/www'
directory=$(dialog --stdout --title "Select directory" --dselect "$DIR/" 10 60)
echo "$directory" | grep -ioP '(?<=/)[^/]+\.[^/]+(?=/)'
afteroot
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.