Se o arquivo for criado por um curto período de tempo, você pode executar o seguinte comando no terminal separado antes de executar o script:
while true; do cat /tmp/drush_* 2>/dev/null && break; done
Onde /tmp/drush_*
é seu padrão. A vantagem é que é rápido e não é necessário instalar nenhuma ferramenta externa (se você não tiver, por exemplo, permissões de administrador / root).
Por favor, note que usar a ferramenta inotifywatch
(de inotify-tools
) não funcionará neste caso em particular, porque o arquivo é criado depois que os relógios foram colocados e a mudança não será detectada. Leia mais: Por que inotify não imprime a lista de arquivos alterados?
Mas você ainda pode usar a ferramenta inotifywait
, que aguarda eficientemente as alterações nos arquivos usando a interface inotify do Linux.
Aqui está o exemplo simples:
inotifywait -m --format "%e %f" /tmp
E exemplo para mostrar o conteúdo de arquivos recém-criados em /tmp
:
inotifywait -m --format "%f" /tmp | grep --line-buffered ^drush | xargs -L1 -I% cat /tmp/% 2> /dev/null
Adicione sudo
antes de cat
, se necessário. Altere /tmp
e drush
para seus valores adequados.