Sou muito novo em bash scripts, então posso estar latindo na árvore errada, mas aqui está minha situação atual:
Em um script, inicio o soffice ; converter um odt para um pdf
Parece que o escritório separa-se do processo do script e se afasta para fazer suas próprias coisas. Ok, tudo bem; Aplicativos GUI tendem a fazer isso ...
No entanto, preciso esperar até que o novo pdf seja totalmente escrito, pois minha próxima etapa envolve o processamento desse novo pdf .
(Tanto quanto eu sei), não posso utilizar o ID do processo do soffice, porque ele pode já ter sido um processo em execução antes do início do meu script: por exemplo. O soffice já pode estar aberto para a atividade normal da GUI para outro documento / apresentação / planilha não relacionada.
O ponto crucial para mim é que, antes que eu possa prosseguir, a redação do novo pdf deve ser finalizada ...
Existe alguma maneira de determinar quando um arquivo não está mais aberto para outro processo no modo "gravação"? ...
fonte
if [ -f test.odf ]
. (o script do bash pode ser tão enigmático às vezes ...)lsof -- /path/to/file
evitar ogrep
'ing'