Gostaria de usar um script zsh para anexar um comando ao histórico de comandos para que ele apareça quando eu pressionar a seta para cima. Estou anexando uma linha a ${HISTFILE} e ela aparece como a última linha, mas a ação da seta para cima parece ignorá-la.
Vejo que o zsh mantém um histórico de sessão em paralelo ao arquivo de histórico, mas ainda não vi uma maneira de adicioná-lo ou de realizar o que pretendo fazer. Existe uma forma de fazer isso?
Responder1
Você pode usar print -s
ou print -S
para isso:
-s
- Coloque os resultados na lista de histórico em vez de na saída padrão. Cada argumento do comando print é tratado como uma única palavra no histórico, independentemente do seu conteúdo.
-S
- Coloque os resultados na lista de histórico em vez de na saída padrão. Neste caso apenas um único argumento é permitido; ele será dividido em palavras como se fosse uma linha de comando completa do shell. O efeito é semelhante à leitura da linha de um arquivo de histórico com a
HIST_LEX_WORDS
opção ativa.
Verhttps://zsh.sourceforge.io/Doc/Release/Shell-Builtin-Commands.html#index-print