Pilih pipa yang lebih sedikit tapi tetap sorot

32

Apakah mungkin untuk mem-pipe output (mis. dmesg) Ke perintah seperti less(atau yang setara) dan menjaga penyorotan teks yang digunakan oleh perintah asli?

contoh: di sebelah kiri dmesg | lessdi sebelah kanandmesg

<code> dmesg |  kurang </code> vs <code> dmesg </code>

apoc
sumber

Jawaban:

37

Gunakan --humanparameter untuk melihat dmesgoutput berwarna dalam lesslingkungan yang mirip.

dmesg --human --color=always

Atau, gunakan perintah berikut untuk mencapai hasil yang serupa.

dmesg --color=always | less -R

Banyak utilitas lain yang menghasilkan output berwarna ( ls, grep, dll) memiliki serupa --color=alwayspilihan.

Steven
sumber
1
Sebenarnya --humantidak lebih dari sekedar melestarikan warna dan pipa untuk less: juga tanda tanggal sebagai misalnya [May23 00:58]dan offset kecil berikutnya sebagai [ +6.046768]bukan apa yang akan selalu [121187.191521]dengan less.
Ruslan
Apakah ada cara untuk membuat ini melestarikan warna format otomatis untuk kapan aku piping setiap perintah berdasarkan txt (bukan hanya dmesg)?
mikemtnbikes
@mikemtnbikes Anda harus menggunakan --color=alwaysif yang disediakan oleh program. Suatu program tahu apakah itu keluaran ke pipa dan karena itu dapat memutuskan untuk menampilkan warna atau tidak.
Steven