コピー2018.11.25続きです。grepのprint_line_middleを読んでみます。}takk@deb9:~/src/grep-2.27/src$前回のgrep時にも見つけた関数ですが、1203行目のpr_sgr_start_if、1206行目のpr_sgr_end_ifが色制御に関連してそうです。それぞれ関数を確認してみます。}sgr_startという引数と、s、つまりmatch_colorを渡している関数print_start_colorizeを読んでます。sgr_startが気になります。"\33[m\33[K";色つけのエスケープシーケンスですね。%sを使ってるところから、printfに渡す文字列かと思います。いうことは、print_start_colorizeの正体は、printfですね。間違ってたとしても、困ることはないので、わざわざ見なくてもよいでしょう。–colorで表示される色は、ただのエスケープシーケンスですね。パイプで渡すと色が消えるのか。関連記事4-3.文字列置換grepの色の仕組み(その5)続きです。以下のようにの文字列を分岐に埋め込みます。