De acordo com as Leis 12.965/2014 e 13.709/2018, que regulam o uso da Internet e o tratamento de dados pessoais no Brasil, ao me inscrever na newsletter do portal DICAS-L, autorizo o envio de notificações por e-mail ou outros meios e declaro estar ciente e concordar com seus Termos de Uso e Política de Privacidade.
Colaboração: Rubens Queiroz de Almeida
Data de Publicação: 14 de julho de 2010
Em um ambiente de janelas, frequentemente temos diversos terminais em execução, e cada um deles com seu histórico de comandos. Suponhamos que eu tenha uma janela com centenas de comandos executados, e outra com apenas cinco comandos. Se eu encerrar a segunda sessão primeiro, o histórico é sobrescrito e eu ficou com apenas os cinco comandos da segunda janela registrados. O ideal seria que o histórico fosse comum e dinâmico, ou seja, cada comando executado ficando disponível para todas as sessões em execução.
Executando o comando
tail -f .bash_history
em uma das janelas, vemos os comandos sendo executados. Mas se fecharmos uma outra janela, vejam o que acontece:
tail: .bash_history: arquivo truncado
Perdemos tudo que estava lá. A sessão que foi fechada truncou o arquivo .bash_history
.
Para eliminar este problema, precisamos fazer com que a shell bash acrescente imediatamente, ao arquivo do histórico, os comandos executados em todas as sessões. Para isto, especificamos, no arquivo .bashrc
, a seguinte diretiva:
history -a
Eu acho esta forma de trabalho bastante conveniente. Eu considero particularmente irritante ter uma sessão de histórico para cada janela aberta. Não sei porque o padrão não é assim.
Aproveitando, no Twitter, tem um usuário chamado @bashtips, que fornece dicas curtas de bash. Vale a pena acompanhar.
This policy contains information about your privacy. By posting, you are declaring that you understand this policy:
This policy is subject to change at any time and without notice.
These terms and conditions contain rules about posting comments. By submitting a comment, you are declaring that you agree with these rules:
Failure to comply with these rules may result in being banned from submitting further comments.
These terms and conditions are subject to change at any time and without notice.
Comentários