Como configurar arquivos de histórico Bash individuais para cada contêiner junto com um arquivo de histórico unificado?

Como configurar arquivos de histórico Bash individuais para cada contêiner junto com um arquivo de histórico unificado?

Na minha configuração atual, todos os meus históricos do bash são armazenados em um único arquivo, que é apontado paraHISTFILE.

Esse histórico inclui um histórico do sistema host e de todos os contêineres.

Junto com esse histórico, quero configurar por container bash_history_<cont_name>.

Detalhes de configuração:

  • O sistema host possui uma configuração de contêineres docker.
  • Todos os contêineres foram /home/uname/compartilhados com o host. (.bashrc também é compartilhado)
  • Todo o histórico de comandos [do host e de todos os contêineres] é gravado em HISTFILE.
  • Para atualizações rápidas HISTFILE, o prompt é atualizado em .bashrc da seguinte maneira.
PROMPT_COMMAND="${PROMPT_COMMAND:+$PROMPT_COMMAND$'\n'}history -a; history -c; history -r"

Junto com este sistema em vigor. Também quero salvar o histórico de comandos usados ​​em contêineres em um arquivo dedicado apenas a esse contêiner.

Ex. Para contêineres ContAe ContB,o histórico de comandos será salvo no 'HISTFILE' comum, assim como o histórico de comandos dos respectivos contêineres também deverá ser atualizado. Para ContA, ~/bash_history_ContAtambém deve ser atualizado.

PS: O histórico de comandos de arquivo único é atualizado assim que o comando é executado. O bash_history_<cont_name>contêiner por contêiner pode ser um arquivo atualizado lentamente.

Responder1

Para "O histórico de comandos de arquivo único é atualizado assim que o comando é executado", você pode fazer isso comuma das 3 respostas para esta pergunta(teste o que funciona melhor para você)

No PROMPT_COMMAND você também pode adicionar qualquer redirecionamento para qualquer arquivo global que desejar: basta adicionar o comando mais recente antes de cada prompt? (cuidado: alguns podem ser multilinhas)

informação relacionada