Come copiare il testo dalla console cmd e mantenere la formattazione (con colori)?


16

Voglio tagliare e incollare da cmd e conservare le informazioni sul colore quando si incolla su un'altra applicazione. È simile all'incollaggio nella maggior parte delle applicazioni con informazioni di formattazione.

C'è un modo per fare questo? O può essere fatto con un'app simile a cmd?

testo alternativo

Risposte:


7

La gente di PowerShell, sul loro blog , ha pubblicato un articolo intitolato: Acquisizione colorata dello schermo della console in HTML e RTF

Una volta che si trova in un file RTF, con i colori, apri RTF con Word o OpenOffice e copia il testo nell'applicazione di destinazione.

Poiché PowerShell è una buona sostituzione di cmd.exe con molte più funzioni, provalo.


2
Non è tanto una sostituzione in alternativa. La compatibilità impone che non può sostituire cmd :-)
Joey

Sì, hai ragione, Johannes! "Danke Schön" per il chiarimento :-).
Snark

+ Impressionante! Grazie. All'inizio è stato un po 'confuso poiché non avevo mai usato PowerShell, ma ha funzionato esattamente come descritto.
Keith Bentrup,


Il collegamento è interrotto.
jippyjoe4,

1

La risposta di Snark è utile, ma il collegamento è interrotto. Il link aggiornato al post del blog MSDN è qui: Acquisizione colorata della schermata della console in HTML e RTF

È necessario copiare le funzioni dal post del blog e incollarle in PowerShell. E quindi puoi eseguire comandi come:

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


0

I colori in cmd non sono gli stessi dei colori normali, è l'interprete che interpreta i codici colore. Non credo sia possibile farlo, e controllando in Console2, non può farlo neanche, quindi probabilmente è per un ottimo motivo.


AFAIK, Windows Console non supporta i codici colore ANSI (come fanno gli emulatori di terminali Unix); il programma deve chiamare funzioni speciali per impostare il colore del testo. Inoltre, un programma può leggere l'intero contenuto del suo buffer dello schermo (è così che funziona lo snippet di PowerShell) e sarebbe possibile far sì che Console2 ricordi anche tutto. Non c'è alcun motivo reale per impedirlo.
user1686

Bene, mi sbaglio spesso;) Ho pensato che i due avrebbero funzionato in modo simile, poiché gli strumenti di Cygwin hanno un colore funzionante, ma devono averlo implementato da soli.
Phoshi,

@grawity sembra che ansi sia supportato nativamente nella console di Windows in Windows 10 msdn.microsoft.com/en-us/library/windows/desktop/…
Antony Hatchkins

0

C'è un modo lungo e tortuoso di farlo, usando la cattura dello schermo?

  1. Premi Alt + PrtScr
  2. Questo copierà la finestra negli appunti
  3. Da Start, inserisci mspaint
  4. Fai clic su Modifica / Incolla o Ctrl-V per incollare il contenuto degli Appunti
  5. Modificalo per mostrare solo la casella di comando e salvarlo in PNG (GIF porterà a Paint che dithering il classico testo grigio e JPEG creerebbe artefatti attorno al tuo testo).

Quindi quelle schermate, saranno pronte per essere inserite in Word come immagine a scopo di documentazione. Certo, non è testo, quindi non sarà selezionabile. Ma potrebbe essere meglio di niente.


L'unica cosa che manca questa soluzione sarebbe l'esecuzione OCR sull'immagine di output :) Overkill? Forse, ma probabilmente più facile da gestire rispetto alla risposta accettata.
kayleeFrye_onDeck,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.