O Zsh armazena linhas de entrada (possivelmente com informações de tempo) no arquivo indicado pela variável HISTFILE
. Esse deve ser um nome de arquivo absoluto (caso contrário, será interpretado em relação a qualquer diretório atual no momento).
O Zsh não possui um valor padrão interno para HISTFILE
. A distribuição zsh vem com um assistente de configuração para novos usuários com o valor ~/.histfile
incorporado, portanto é isso que os usuários do zsh obtêm por padrão. Oh-my-zsh vem com HISTFILE=.zhistory
predefinição. Parece que você tentou o zsh com a configuração padrão e com o oh-my-zsh. Verifique sua .zshrc
(ou as datas do arquivo) para ver qual delas você está usando no momento.
Como o zsh abre o arquivo e, portanto, o que acontece se for um link simbólico, depende de várias opções.
- Se uma das opções
append_history
(definida por padrão), inc_append_history
ou share_history
estiver definida, ou quando o histórico for salvo explicitamente com fc -AI
, o zsh será anexado ao arquivo existente.
Observe que, mesmo nessas configurações, o zsh substitui o arquivo ocasionalmente, conforme descrito abaixo, para reduzi-lo ao tamanho.
- Caso contrário, se a opção
hist_save_by_copy
estiver configurada (por padrão, desde o zsh 5.0, mas não existe no 4.2), o zsh grava um arquivo temporário e o move quando estiver completo. Nesse caso, se o arquivo de histórico for um link simbólico, o novo arquivo substituirá o link simbólico.
- Caso contrário, o zsh substituirá o arquivo existente no local.
Em vez de apontar zsh para um link simbólico, defina HISTFILE
para onde você quiser que o arquivo de histórico esteja.
Quantas linhas do histórico são mantidas são configuradas pelas variáveis HISTSIZE
e SAVEHIST
. HISTSIZE
é o número máximo de linhas que são mantidas em uma sessão e SAVEHIST
é o número máximo de linhas que são mantidas no arquivo de histórico.
Para salvar algum histórico, você precisa definir ambos HISTFILE
e SAVEHIST
, como o valor padrão SAVEHIST
é 0. Você também pode aumentar HISTSIZE
(a partir do zsh 5.0, o padrão é apenas 30).
~/.zshrc
e / ou as/etc/zshrc
opções descritas lá zsh.sourceforge.net/Guide/zshguide02.html#l17