Armazena o histórico de comandos com o diretório invocado de

0

Às vezes, seria útil olhar para trás um comando que eu sei que usei para um bit específico de análise, mas talvez eu não me lembre do caminho exato do arquivo onde os arquivos para as análises (ou o que quer que seja) foram

Alguém sabe de alguma ferramenta ou solução de terceiros em que o histórico de comandos pode ser armazenado, juntamente com o diretório de trabalho no momento da chamada?

    
por Joe Healey 17.01.2018 / 11:24

2 respostas

1

O Bash tem dois recursos que podem ser úteis se você estiver disposto a fazer alguns scripts menores.

  1. Variável de bash PROMPT_COMMAND executará um comando ou uma função após a conclusão de todos os comandos.

  2. O bash trap DEBUG executará uma função bash antes do início de todos os comandos.

Você pode criar scripts para qualquer um desses recursos de uma função para gerar em um arquivo de sua escolha o diretório atual $PWD e a seqüência de caracteres de comando $BASH_COMMAND .

    
por 17.01.2018 / 12:44
0

Uma alternativa limitada seria adicionar o diretório atual para seu código%. Isso seria útil nos casos limitados de: 1) usar um emulador de terminal em execução em uma janela X11 que possui scroll-back; 2) usando qualquer emulador de terminal ou até mesmo um console bruto, mas com $PS1 ou outro programa desse tipo que fornece sua própria rolagem de volta.

Observe que tmux fornece um comando para pesquisar em seu rolagem de volta, o que ajudaria a encontrar comandos específicos. Alguns emuladores de terminal também podem ter funções de pesquisa.

A principal desvantagem seria que os scroll-backs conteriam todos seu STDOUT e STDERR além do seu STDIN.

Finalmente, tmux tem um plug-in chamado tmux-logging que pode salve toda a sua sessão em um arquivo.

    
por 17.01.2018 / 12:08