簡體   English   中英

bash 彩色輸出日志行或部分行

[英]bash outputting log lines or parts of lines in color

我正在使用 Mac 終端 ssh 到 Linux 上的 bash 帳戶

我已經在命令行提示符中應用了以下顏色:

#bash_profile
parse_git_branch() {
     git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ (\1)/'
}
export PS1="\[\033[32m\]\w\[\033[33m\]\$(parse_git_branch)\[\033[00m\] $ "

所以[\033..部分就是這樣做的。

但是,我還想對我正在運行的 php 腳本上的控制台日志執行此操作,特別是為日期和跟蹤 ID 着色,以便它們不那么關注:

Aug 12 16:08:04.5072 [d05lo653148oocks0ook4oc04] [warning] Hash value: 39d26fdee9eb472ab72dafbaf88801b5
Aug 12 16:08:04.5146 [d05lo653148oocks0ook4oc04] [ORM] [debug] Kernel_Core_Orm::commit

並且也許給[warning]上色,例如不同的顏色。

我該怎么做?

核實:

$ php -r 'echo "\033[38;5;1mgood \033[38;3;2mluck \033[0mdude\n";'

\033[ -> 轉義字符
38 -> 前景,使用 48 作為背景。
5 -> 不知道,你告訴我;-)
1 -> 紅色,范圍從 0 到 255。
m -> 關閉逃生

最后一部分\033[0m重置為默認終端顏色。

在您的情況下,請使用以下內容。

<?php
echo "\033[38;5;6mAug 12 16:08:04.5072\033[0m [d05lo653148oocks0ook4oc04] \033[38;5;11m[warning]\033[0m Hash value: 39d26fdee9eb472ab72dafbaf88801b5";

我曾經寫過一篇關於它的文章,請查看

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM