Текст промежутка строк дисплея с grep

Для разделов жесткого диска (например, после изменения таблиц разделов), взгляните на partprobe команда.

3
05.09.2012, 15:59
4 ответа

Вот a sed звоните для получения всего между (и включая) две определенных строки:

sed -n '/<VirtualHost*/,/<\/VirtualHost>/p' httpd.conf

Если Вы хотите искать определенный домен, просто добавьте его:

sed -n '/<VirtualHost 192.168.1.10:80>*/,/<\/VirtualHost>/p' httpd.conf
3
27.01.2020, 21:11
  • 1
    Не совсем, что я ищу. Не выполняет требование поиска домена. –  anzenketh 05.09.2012, 15:58
  • 2
    Можно просто добавить домен, который Вы ищете, я обновил свой ответ. –  scai 05.09.2012, 16:08
  • 3
    Это найдет IP не доменом. –  anzenketh 05.09.2012, 16:11

Должен использовать grep? sed и awk более подходят для таких задач:

sed -n '/<VirtualHost /,/<\/VirtualHost>/p' inputfile
awk '/<VirtualHost /,/<\/VirtualHost>/' inputfile

Как httpd.conf директивы нечувствительны к регистру, можно предпочесть использовать нечувствительное к регистру соответствие:

sed -n '/<VirtualHost /I,/<\/VirtualHost>/Ip' inputfile
gawk -vIGNORECASE=1 '/<VirtualHost /,/<\/VirtualHost>/' inputfile

(IGNORECASE расширение GNU, только доступное в gawk.)

Обновление согласно измененному вопросу:

sed -n '/<VirtualHost\s\+192\.168\.1\.10\b/I,/<\/VirtualHost>/Ip' inputfile
gawk -vIGNORECASE=1 '/<VirtualHost\s+192\.168\.1\.10\>/,/<\/VirtualHost>/' inputfile
3
27.01.2020, 21:11
  • 1
    Не совсем, что я ищу. Не выполняет требование поиска домена. –  anzenketh 05.09.2012, 15:57
awk '/Iowa/,/Montana/' file

Строка замены A и B к Вашему собственному.

2
27.01.2020, 21:11

Я подозреваю, что у вас есть состояние гонки. Это будет что-то подобное:

  • SSH-соединение начинается
  • SSH запускает startup.sh
  • Startup.sh запускает фоновый процесс (NOHUP)
  • Startup.sh Finish
  • SSH отделки, а это убивает Детские процессы (т.е. Nohup)

Если SSH не сократил вещи короткие вещи, произошло бы следующее (не уверено в порядке этих двух):

  • NOHUP запускает ваш сценарий Python
  • NOHUP отключения родительский процесс и терминал.

Итак, последние два критически важных шага не происходят, потому что Startup.sh и SSH Finith Fine до того, как наступит время, чтобы сделать свое время.

Я ожидаю, что ваша проблема уйдет, если вы положите несколько секунд сна в конце Startup.sh. Я не уверен, сколько времени вам нужно. Если важно сохранить его минимуму, то, возможно, вы можете посмотреть на что-то в ProC, чтобы увидеть, когда он безопасен.

-121--23756-
grep -Pzio '(?s)<VirtualHost ([yourserverip]|\*)(:(80|443))?>(?:.(?!</VirtualHost))*?ServerName +[yourservername](?:(?!</VirtualHost).)*?</VirtualHost>' [yourfilename]

Заменить все содержимое в [] с правильными значениями

0
27.01.2020, 21:11

Теги

Похожие вопросы