Eu sei sobre o comando Invoke-History (alias r) para recuperar e executar um comando anterior, por exemplo, r 29, mas existe uma maneira de recuperar o comando 29, mas não executá-lo, ou seja, colocá-lo na linha atual que você pode editar antes de executar? É um pouco como pressionar a seta para cima várias vezes? Com uma longa história, é muito difícil voltar para editar e executar e comandar anteriormente.
Eu sei que posso fazer algo assim para recuperar o texto de um comando:
h 56 | FL
E então copie e cole, mas com comandos longos envolvendo uma linha, você deve copiar e colar em um editor, juntar as linhas e depois copiar e colar novamente. Certo, cara!
Responder1
Não é possível encontrar uma maneira de executar o powershell dentro do powershell, mas você pode executar o executável do powershell e passar o comando powershell e ele funciona. Pode causar problemas com o escopo dependendo do que você está fazendo.
& powershell $(h 56).CommandLine
Responder2
Não é uma solução Powershell pura, mas você pode canalizá-la para clip.exe e colá-la no console. Ainda são duas etapas, mas sua linha deve quebrar corretamente. Se você estiver usando o XP, talvez seja necessário copiar o clip.exe de um sistema Server 2003.
(h 56).CommandLine | clip.exe