Recuperar comando do PowerShell para edição

Recuperar comando do PowerShell para edição

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

informação relacionada