Como copiar texto do console do cmd e manter a formatação (com cores)?

16

Quero cortar e colar do cmd e manter as informações de cores ao colar em outro aplicativo. É semelhante a colar na maioria dos aplicativos com informações de formatação.

Existe uma maneira de fazer isso? Ou isso pode ser feito com um aplicativo semelhante ao cmd?

texto alternativo

Keith Bentrup
fonte

Respostas:

7

O pessoal do PowerShell, em seu blog , postou um artigo intitulado: Captura colorida da tela do console em HTML e RTF

Quando estiver em um arquivo RTF, com cores, abra o RTF com Word ou OpenOffice e copie o texto para o aplicativo de destino.

Como o PowerShell é uma boa substituição do cmd.exe com muito mais recursos, experimente.

Snark
fonte
2
Não é tanto uma substituição como uma alternativa. Ditames de compatibilidade que não pode substituir cmd :-)
Joey
Sim, você está certo, Johannes! "Danke schön" pelo esclarecimento :-).
Snark
+ Incrível! Obrigado. No começo, foi um pouco confuso, pois nunca havia usado o PowerShell, mas funcionou exatamente como descrito.
Keith Bentrup 03/12/2009
Há uma Gist com o código: gist.github.com/LeoColomb/1a683e7a05da067259e9
dualed
O link está quebrado.
jippyjoe4
1

A resposta de Snark é útil, mas o link está quebrado. O link atualizado para a postagem do blog do MSDN está aqui: Captura colorida da tela do console em HTML e RTF

Você precisa copiar as funções da postagem do blog e colá-las no PowerShell. E então você pode executar comandos como:

$ htmlFileName = "$ env: temp \ ConsoleBuffer.html"
. \ Get-ConsoleAsHtml | out-file $ htmlFileName - codificando UTF8

fã de robbie
fonte
0

As cores em cmd não são iguais às cores normais; é o intérprete que interpreta os códigos de cores. Não acredito que seja possível fazer isso e, ao fazer o check-in no Console2, também não é possível, por isso é provavelmente por um motivo muito bom.

Phoshi
fonte
AFAIK, Windows Console não suporta códigos de cores ANSI (como os emuladores de terminal Unix); o programa deve chamar funções especiais para definir a cor do texto. Além disso, um programa pode ler o conteúdo completo de seu buffer de tela (é assim que o snippet do PowerShell funciona) - e seria possível fazer o Console2 lembrar de tudo também. Não há motivo real para impedi-lo.
User1686
Bem, muitas vezes estou errado;) Presumi que os dois funcionariam da mesma forma, pois as ferramentas da cygwin têm cores funcionais, mas devem ter implementado elas mesmas.
Phoshi 02/12/2009
olhares @grawity como ansi é suportado nativamente no consola do Windows no Windows 10 msdn.microsoft.com/en-us/library/windows/desktop/...
Antony Hatchkins
0

Existe uma maneira extensa de fazê-lo, usando a captura de tela?

  1. Pressione Alt + PrtScr
  2. Isso copiará a janela para a área de transferência
  3. Em Iniciar, digite mspaint
  4. Clique em Editar / Colar ou Ctrl-V para colar o conteúdo da área de transferência
  5. Edite-o para mostrar apenas a caixa de comando e salve-o em PNG (o GIF levará o Paint a pontilhar o texto cinza clássico e o JPEG criaria artefatos em torno do texto).

Em seguida, essas capturas de tela estarão prontas para serem inseridas no Word como uma imagem para fins de documentação. Obviamente, não é texto, portanto não será selecionável. Mas pode ser melhor que nada.

t0mm13b
fonte
A única coisa que falta nessa solução alternativa seria executar o OCR na imagem de saída :) Exagero? Possivelmente, mas provavelmente mais fácil de lidar do que a resposta aceita.
kayleeFrye_onDeck