我想用不同顏色顯示的行號突出顯示行尾。我知道顯示行號的命令,即awk '{print $0","NR;}' file但不知道如何突出顯示行尾。任何人都可以幫助我嗎?如果可能的話,我想在一個命令中同時執行這兩項操作。
uj5u.com熱心網友回復:
如果你的終端支持 ANSI 轉義碼,你可以試試這個:
awk '{ print $0, "\x1b[7m" NR "\x1b[0m" }' file
uj5u.com熱心網友回復:
您可以執行以下操作:
perl -mTerm::ANSIColor=color -lne 'print $_, color("red"), $., color("reset")'
或者
perl -mTerm::ANSIColor=RESET,RED -lne 'print $_, RED, $., RESET'
其中perl,$_是當前行,$.是行號。 RED并且RESET是相當不言自明的。從 ANSIColor 的檔案中,您可以選擇:
CLEAR RESET BOLD DARK
FAINT ITALIC UNDERLINE UNDERSCORE
BLINK REVERSE CONCEALED
BLACK RED GREEN YELLOW
BLUE MAGENTA CYAN WHITE
BRIGHT_BLACK BRIGHT_RED BRIGHT_GREEN BRIGHT_YELLOW
BRIGHT_BLUE BRIGHT_MAGENTA BRIGHT_CYAN BRIGHT_WHITE
ON_BLACK ON_RED ON_GREEN ON_YELLOW
ON_BLUE ON_MAGENTA ON_CYAN ON_WHITE
ON_BRIGHT_BLACK ON_BRIGHT_RED ON_BRIGHT_GREEN ON_BRIGHT_YELLOW
ON_BRIGHT_BLUE ON_BRIGHT_MAGENTA ON_BRIGHT_CYAN ON_BRIGHT_WHITE
uj5u.com熱心網友回復:
$ seq 4 6 | awk -v red="$(tput setaf 1)" -v reset="$(tput sgr0)" '{print $0, red NR reset}'
4 1
5 2
6 3
您顯然看不到上面的顏色,所以這里顯示了帶有顏色變化轉義的輸出,以便您可以看到它們存在:
$ seq 4 6 | awk -v red="$(tput setaf 1)" -v reset="$(tput sgr0)" '{print $0, red NR reset}' | cat -v
4 ^[[31m1^[(B^[[m
5 ^[[31m2^[(B^[[m
6 ^[[31m3^[(B^[[m
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/418624.html
標籤:
