cat 文件到终端并为特定单词着色
cat file to terminal and color a specific word
我已经阅读了几个处理语法突出显示的 post,cat
和 grep
(例如 this one and this one too),但还没有找到我想要的寻找。我想将 整个文本文件打印到终端 ,并有一个特定的(重复)单词 红色 。没有这个词的行也应该打印出来。这是接近的东西,但只是
打印包含特定单词的行。此 post 没有显示,但 load 字样显示为红色。
$ cat input.ll | grep "load"
%tmp = load %class.A*, %class.A** %p, align 8
%vtable = load i32 (%class.A*, i32, i32, i32)**, i32 (%class.A*, i32, i32, i32)*** %tmp1, align 8
%tmp2 = load i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vfn, align 8
%tmp3 = load i32, i32* @x, align 4
这是原始文件:
$ cat input.ll
%tmp = load %class.A*, %class.A** %p, align 8
%tmp1 = bitcast %class.A* %tmp to i32 (%class.A*, i32, i32, i32)***
%vtable = load i32 (%class.A*, i32, i32, i32)**, i32 (%class.A*, i32, i32, i32)*** %tmp1, align 8
%vfn = getelementptr inbounds i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vtable, i64 2
%tmp2 = load i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vfn, align 8
%tmp3 = load i32, i32* @x, align 4
%call = call i32 %tmp2(%class.A* %tmp, i32 3, i32 %tmp3, i32 7)
我建议使用 GNU grep:
grep --color -E 'load|$' file
我已经阅读了几个处理语法突出显示的 post,cat
和 grep
(例如 this one and this one too),但还没有找到我想要的寻找。我想将 整个文本文件打印到终端 ,并有一个特定的(重复)单词 红色 。没有这个词的行也应该打印出来。这是接近的东西,但只是
打印包含特定单词的行。此 post 没有显示,但 load 字样显示为红色。
$ cat input.ll | grep "load"
%tmp = load %class.A*, %class.A** %p, align 8
%vtable = load i32 (%class.A*, i32, i32, i32)**, i32 (%class.A*, i32, i32, i32)*** %tmp1, align 8
%tmp2 = load i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vfn, align 8
%tmp3 = load i32, i32* @x, align 4
这是原始文件:
$ cat input.ll
%tmp = load %class.A*, %class.A** %p, align 8
%tmp1 = bitcast %class.A* %tmp to i32 (%class.A*, i32, i32, i32)***
%vtable = load i32 (%class.A*, i32, i32, i32)**, i32 (%class.A*, i32, i32, i32)*** %tmp1, align 8
%vfn = getelementptr inbounds i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vtable, i64 2
%tmp2 = load i32 (%class.A*, i32, i32, i32)*, i32 (%class.A*, i32, i32, i32)** %vfn, align 8
%tmp3 = load i32, i32* @x, align 4
%call = call i32 %tmp2(%class.A* %tmp, i32 3, i32 %tmp3, i32 7)
我建议使用 GNU grep:
grep --color -E 'load|$' file