Bash 脚本:十六进制

Bash 脚本:十六进制

我正在尝试执行以下操作:

ch='\x21'
line="\x21"
len=50
for i in `seq 1 $len`
do
    line+="$ch"
done

而不是 50 个“!” (十六进制代码 \x21)我得到 50 个 '\x21' 的列表。我怎样才能在 bash 中做到这一点?

答案1

根据手册页,“形式的单词$'string'被特殊对待”。因此,添加到$''组合中可能会有所帮助:

% bash
bash-3.2$ ch=$'\x21'; echo $ch$ch$ch
!!!
bash-3.2$ 

相关内容