Pipe auf weniger, aber die Hervorhebung beibehalten


32

Ist es möglich, Ausgaben (z. B. dmesg) an einen Befehl wie less(oder einen gleichwertigen) weiterzuleiten und die vom ursprünglichen Befehl verwendete Textmarkierung beizubehalten?

Beispiel: links dmesg | lessrechtsdmesg

<code> dmesg |  weniger </ code> vs <code> dmesg </ code>

Antworten:


37

Verwenden Sie den --humanParameter, um farbige dmesgAusgaben in einer lessähnlichen Umgebung anzuzeigen .

dmesg --human --color=always

Verwenden Sie alternativ den folgenden Befehl, um ähnliche Ergebnisse zu erzielen.

dmesg --color=always | less -R

Viele andere Dienstprogramme , die farbige Ausgabe erzeugen ( ls, grepusw.) haben eine ähnliche --color=alwaysOption.


1
Eigentlich --humanist mehr als nur erhalten Farbe und Rohr less: es auch Markierungen Daten wie zB [May23 00:58]und die anschließenden kleine Offsets als [ +6.046768]statt dem , was immer sein würde , [121187.191521]mit less.
Ruslan

Gibt es eine Möglichkeit, diese Beibehaltung der Farbformatierung automatisch zu machen, wenn ich einen txt-basierten Befehl weitergebe (nicht nur dmesg)?
Mikemtnbikes

@mikemtnbikes Sie müssen das --color=alwaysvom Programm bereitgestellte verwenden. Ein Programm weiß, ob es auf einer Pipe ausgegeben wird, und kann daher entscheiden, ob Farbe ausgegeben werden soll oder nicht.
Steven
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.