O arquivo ~/bash_logout é somente originado quando você sai do shell de login (de man bash ):
When an interactive login shell exits, or a non-interactive login shell executes the exit builtin command, bash reads and executes commands from the file ~/.bash_logout, if it exists.
Quando você abre um terminal, está executando um shell interativo de não-login, portanto, ~/bash_logout não é relevante. Para mais informações sobre os diferentes tipos de shell, veja minha resposta aqui .
Para que algo seja executado toda vez que você fechar o terminal, você pode usar trap para definir um comando para ser executado toda vez que uma sessão bash interativa sair. Para fazer isso, adicione esta linha ao seu ~/.bashrc :
trap /home/user/Documents/logout_msg.sh EXIT
É claro que, se esse script estiver imprimindo uma mensagem para o terminal, você precisará certificar-se de que seu logout_msg.sh inclua um comando sleep para que o usuário tenha tempo de ler a mensagem. Algo como:
echo "Whatever message you want"
sleep 10 ## wait for 10 seconds