
Estoy intentando hacer lo siguiente:
ch='\x21'
line="\x21"
len=50
for i in `seq 1 $len`
do
line+="$ch"
done
En lugar de 50 '!' (código hexadecimal \x21) Obtengo una lista de 50 '\x21'. ¿Cómo puedo hacer esto en bash?
Respuesta1
Según la página de manual, "Las palabras del formulario $'string'
se tratan de forma especial". Por lo tanto, agregar $''
a la mezcla puede ayudar:
% bash
bash-3.2$ ch=$'\x21'; echo $ch$ch$ch
!!!
bash-3.2$