カラーテキストパターンを印刷するには?

カラーテキストパターンを印刷するには?
RED='\033[0;31m'
NC='\033[0m' # No Color
var='I /love Stack Over/flow'

正規表現を使用してテキストの一部をカラーで印刷しようとしても機能しません。

 echo $var | sed "s=\(.*/\)\(.*\)=\${RED}\2\${NC}="

出力:

${RED}flow${NC}

ベストアンサー1

evalタスクを実行する他の方法がたくさんある場合は、以下を使用しないことをお勧めします。

RED='\\033[0;31m'
NC='\\033[0m' # No Color
echo -e "$(sed "s=[^/]\+$=${RED}&${NC}=" <<<$var)"

\内部使用によるsedあなたは逃げなければなりませんエスケープ文字-または+を押してから単独で\\使用します。EscCtrlVEsc

おすすめ記事