已用颜色回显的变量的 xterm 输出条件

已用颜色回显的变量的 xterm 输出条件

该代码的第四行将输入参数以绿色输出到 xterm。

不过,我希望能够根据输入的值进行调节。

如果我输入单词Foo,那么从 bash 的角度来看,变量word不仅包含与颜色相关的字符Foo,还Foo包含与颜色相关的字符。因此,第一个条件返回失败。我原本以为tr下面的命令会剥离所有颜色编码内容并仅选择单词Foo,但它没有这样做,第二个条件也返回失败。有什么方法可以过滤掉除内容之外的所有内容$1

#!/bin/bash
Input=$1
word=`echo -en "\\e[38;5;41m$Input\\e[0m\\n"`  
echo $word
if [[ `echo $word` = Foo ]] ; then
    echo success
else
    echo failure
fi
word=$(tr -cd [:lower:]  <<< "$word")
if [[ `echo $word` = Foo ]] ; then
    echo success
else
    echo failure
fi

相关内容