Na verdade, estou procurando um script bash que monitore um arquivo, execute cada nova linha no arquivo e remova a linha. Quando todo o arquivo é processado, o script aguarda por novas linhas.
Procurei por alguma resposta, mas quase não encontrei nada além de ler cada linha de um arquivo.
A propósito, o bash é eficiente em uma tarefa como essa ou devo construir um pequeno programa em C para fazer isso?
Responder1
O seguinte faz tudo o que você pede, exceto remover as linhas do arquivo:
$ ./script && tail -n0 -f script | while read line; do eval "${line}"; done;
Primeiro, basta executar o arquivo e depois abusar de tail e eval você pode facilmente aproximar o comportamento desejado.
Responder2
Se remover a linha não for obrigatório, você também pode tentar:
tail -f filename | parallel eval "{}"