regex - 在 perl 中为日志输出(stdout)着色

标签 regex linux string perl unix

抱歉打错了
我有一个这样的日志文件:

mynum[85295365] | yournum[3201410] | mymessage[4 ????? 4 off] | MSGLen[1]

我会像这样给输出着色

mynum == foreground blue  
yournum == foreground yellow  
and mymessage == foreground green.

我的消息着色有问题。
我尝试了以下代码:

if($currentLine=~m/mymessage\[([\w+\d+\S]+){1,}\]/){  
$mymessage=$1;  
$outM="$mymessage";  
$currentLine=~s/mymessage\[([\w+\d+\S]+){1,}\]/mymessage[$cg$outM$crs]/g;}

并没有结果没有。
帮帮我:(((((

最佳答案

使用Term::ANSIColor CPAN 模块。它允许您使用 ANSI 转义序列为屏幕输出着色

关于regex - 在 perl 中为日志输出(stdout)着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25226055/

相关文章:

Python-从文本文件或列表中获取特定字符

php - 在 mysql REGEXP 查询中转义单引号

android - 使用正则表达式解析 HLS m3u8 文件

python - 如何判断通过管道的数据何时结束

python - python中固定位置的字符串替换

java - 如何计算 Java 数组用户输入的字符数?

java - 在java中使用正则表达式查找和替换url

regex - str.startswith 使用正则表达式

c - 为什么我看到的线程数比我在 BusyBox `ps` 列表中创建的线程数多一个?

linux - sftp 上传 bash 忽略文件