A resposta simples para a sua pergunta é você precisa definir share_history
, você faz isso com:
setopt share_history
Desde que você obviamente já fez isso (e essa opção realmente funciona). Eu sugiro que você verifique:
- se os ambos shells têm a opção definida;
- se você não está digitando comandos com um espaço à esquerda (pois
histignorespace
faz com que eles sejam ignorados) - Você tem
$HISTFILE
definido para o mesmo valor em todos os shells? - se você está realmente salvando algum histórico? Diga, se você emitir
echo 123
na guia-1. Vá para a guia 2, chamehistory
. Está lá? (como por seu problema, não). Agora emita,fc -R
(significa reler o arquivo do histórico) e, em seguida,history
está lá agora? Se não, você também pode querer chamarfc -A
(-A
irá anexar o seu histórico ao arquivo) na tab-1 para ter certeza de que o histórico está escrito no arquivo.