Использование GNU grep
, созданное с недавней поддержкой PCRE:
echo 'st Hello world! et' | grep -oP "st\K.*?(?=et)"
Ключевым моментом здесь является использование утверждений с упреждающим и обратным просмотром с нулевой длиной.
\K ==> Look-behind assertion
(?=et) ==> Look-ahead assertion
Для получения дополнительной информации вы можете прочитать здесь .
Respondí a la primera parte de la pregunta. En lugar de ejecutar el script en la fase started
del servicio, quiero ejecutarlo en la fase prestart
. Para eso, necesitaba agregar prestart
delante de la etiqueta del script.
Esencialmente, el resultado es que el servicio no se considera started
hasta que se completen los comandos prestart
, y el servicio lightdm no se iniciará hasta que mi servicio sea started
.
start on starting lightdm
stop on [!12345]
prestart script
#launch the bash script that does install
/bin/bash /path/to/provisioning-script.sh
end script