Existe uma maneira de manter o histórico de comandos do cmd entre as sessões?
Existe uma maneira de manter o histórico de comandos do cmd entre as sessões?
Respostas:
Alterne para usar o PowerShell e siga as instruções no site a seguir para habilitar o histórico:
Como alternativa, no cmd.exe, você pode usar "doskey / history" no final da sessão para mostrar o que você digitou nessa sessão, mas não há como carregá-lo realmente na próxima sessão.
Encontrei duas maneiras, nenhuma das quais exige a mudança para o PowerShell.
cmd.exe
mas é uma boa resposta, e o clink também suporta um modo de injeção.
cmd
por ele, não houve problemas, muito feliz com ele.
Salvar histórico é um pequeno fluxo de trabalho - eis uma maneira menos "pesada" de fazer isso (sem bibliotecas externas).
Crie um arquivo bat / cmd para configurar seu histórico, neste caso, chamei de MyEnvironment.cmd:
doskey save=doskey /history $g$g C:\CmdHistory.log
doskey quit=doskey /history $g$g C:\CmdHistory.log $T exit
doskey history=find /I "$*" C:\CmdHistory.log
cls
Em seguida, execute isso em "Iniciar-> Executar" (você também pode configurar um alias para isso):
cmd.exe /K C:\MyEnvironment.cmd
Toda vez que fecho uma sessão, clico em "sair" - ou, se tenho medo de perder o histórico no meio da sessão, clico em "salvar". Se eu quero grep para algo na história, eu apenas clico em "history KEYWORD".
Pelo comentário de @ dave_thompson_085, o AutoRun
recurso funcionará bem se você não quiser usar o /K
switch. Se você configurou a chave do Registro corretamente, .cmd
ou .bat
não precisa estar %AppData%
, ela pode estar no mesmo local que já está.
Se você usar o %AppData%
local, saiba que o cmd provavelmente procurará seu arquivo em lotes na pasta "Roaming" (em vez da raiz do AppData).
Mais informações sobre o AutoRun
recurso CMD: https://superuser.com/a/302553/333316
$g
insere um >
, e $t
é um separador de comando.
>
e &&
personagens diretamente no alias doskey?
doskey quit=doskey /history
e salve a saída da criação da macro em um arquivo de log (nada ou uma mensagem de erro); próximo feche a janela (descartando tudo). -Você poderia escapar desses personagens com um em ^
vez disso, eu acho. Como ^>^>
e ^&
(... e sim, você só precisa de um comercial)