bash comando para imprimir string de forma inequívoca

5

Eu estou querendo saber se existe um comando em bash para imprimir uma string de uma maneira que expõe o caractere especial que ela contém.

Por exemplo, suponha que a=$'\a\a$a\b\e\b\e' ; existe uma função para imprimir l literalmente de sed ?

O mais próximo que eu tenho até agora é usando o comando \a$''0\b3$ de %code% :

echo "$a"  | sed -n 'l'

que retorna %code% , mas a notação é diferente daquela dentro de %code% , e não funciona se a string contiver novas linhas.

    
por Rastapopoulos 15.10.2017 / 22:18

1 resposta

6

var=$'a b  c'
printf %q "$var"
    $'a b \b c'

Isso funciona em bash . Eu não sei como isso é compatível.

    
por 15.10.2017 / 23:31

Tags