Estou assumindo que seu xxx
é um substituto para um padrão de algum tipo.
delete_lock () {
LOCK="$(grep -m1 -o "lockname:xxx")"
if [ -n "${LOCK#lockname:}" ]; then
release_lock "${LOCK#lockname:}"
fi
}
node foo.js | delete_lock
Isso interromperá o processamento de dados depois que ele observar a primeira correspondência de lockname:xxx
. Em seguida, ele usa a expansão do parâmetro para remover o prefixo lockname:
e, supondo que houve uma correspondência (por exemplo, xxx
, executa release_lock
sobre ele (por exemplo, release_lock "xxx"
).
Se você não quiser que a chamada node
seja interrompida ou deseje mais de uma correspondência, remova a opção -m1
para grep
, mas observe que as cotações podem não funcionar com sua release_lock
código (e tenha cuidado ao remover essas citações, você não quer permitir que caracteres nocivos!).