Qual é o propósito de .bash_logout?

3

A pergunta " O que é o objetivo do .bashrc e como ele funciona? "buscou o propósito e o uso de .bashrc . Outro arquivo com um nome semelhante é .bash_logout .

Esse arquivo deve existir em primeiro lugar? Em caso afirmativo, qual é o papel desse arquivo?

    
por KutalmisB 13.02.2018 / 21:11

3 respostas

3

O arquivo .bash_logout não precisa existir.

Seu conteúdo é originado por bash quando um shell de login bash é encerrado. O arquivo possibilita, por exemplo, várias formas de limpeza ao sair de uma sessão de terminal.

Pode ser utilizado para executar qualquer código de invólucro, mas pode ser usado para, e. limpe a tela se os logins forem feitos em um ambiente não-GUI. Alguns também podem achar útil encerrar explicitamente os programas que foram iniciados a partir de .bash_login ou .bash_profile (se, por exemplo, fetchmail ou algum processo semelhante for iniciado como um daemon de usuário ou em segundo plano, pode ser bom terminá-lo em .bash_logout ).

O shell csh tem um arquivo semelhante chamado .logout e o arquivo correspondente para o shell zsh é chamado de .zlogout . O ksh shell não tem, no meu conhecimento, funcionalidade semelhante.

Veja também a questão relacionada tangencialmente Diferença entre o Login Shell e Shell sem login?

    
por 14.02.2018 / 12:03
9

De man bash :

When a login shell exits, bash reads and executes commands from the files ~/.bash_logout and /etc/bash.bash_logout, if the files exists.

    
por 13.02.2018 / 21:13
1

Como essa pergunta pede detalhes sobre o arquivo .bash_logout, seria bom listar vários arquivos semelhantes. Nós geralmente temos esses 6 arquivos para vários propósitos -

  1. / etc / profile
  2. ~ / .bash_profile
  3. ~. / bash_login
  4. ~ / .bashrc
  5. ~ / .profile
  6. ~ / .bash_logout

Em alguns casos, você também pode encontrar o arquivo .bash_history, que armazena os comandos que o usuário executou.

Supondo que você esteja ciente sobre o arquivo .bashrc e .bash_login, vamos nos concentrar na sequência de execução desses arquivos e, em seguida, veremos a finalidade do arquivo .bash_logout.

Primeiramente, quando o usuário efetua login e se o arquivo .bash_profile estiver disponível, ele será executado independentemente da existência de arquivo .bash_login ou .profile.

Se esse arquivo não estiver disponível, primeiro o arquivo .bash_login será executado e, se esse arquivo também não estiver disponível, o arquivo .profile será executado.

Observe que o arquivo .bash_profile é lido e quaisquer comandos nesse arquivo são executados quando o usuário efetua login, mas esse arquivo não é lido quando o usuário inicia um novo shell. Se o usuário iniciar um novo shell, o arquivo .bashrc será lido, do qual você está ciente.

Comimg para o arquivo .bash_logout, é bastante claro a partir do nome que este arquivo ks executado wjem o usuário efetuar logout. Como se pode concordar, o objetivo principal do bash é fornecer um ambiente que facilite o trabalho do usuário. Portanto, esse arquivo ajuda a criar um ambiente que pode ajudar a executar alguns comandos quando o usuário efetua logout. Pode haver uma infinidade de exemplos. Por exemplo, vamos supor que o administrador queira eliminar todos os processos iniciados por esse usuário quando o usuário fizer logout. Ou, o usuário pode querer limpar o arquivo .mysql_history. Ele pode querer copiar alguns arquivos ou fazer um backup enquanto faz logout. Então você vê, pode haver muitas instâncias.

Vamos supor que o usuário queira fazer um arquivo de backup do diretório / etc sempre que fizer logout. Então ele pode abrir o arquivo .bash_logout e digitar este comando -

tar -cvjf /etc ~/path/to/destination
    
por 15.02.2018 / 08:31

Tags