Você tem gdialog
em ambas as ramificações da instrução if
, portanto, uma delas será executada enquanto inotifywait
sair com um status de saída zero. O comando inotifywait
sairá com um status de saída diferente de zero se algum dos arquivos que estão sendo assistidos for excluído (e você não estiver assistindo a eventos de exclusão).
Para assistir à exclusão e modificação de qualquer um dos arquivos, use
inotifywait -e modify -e delete_self "$ENV_LOCATION"/*.env
Para comparar dois arquivos com cmp
e reagir ao resultado:
if cmp -s file1 file2; then
echo 'files are the same'
else
echo 'files are different'
fi