Pergunta

Como faço para escrever não ASCII caracteres usando eco? Existe uma sequência de escape, como \012 ou algo parecido?

Eu quero acrescentar caracteres ASCII para um arquivo usando:

echo ?? >> file
Foi útil?

Solução

Use

echo -e "\012"

Outras dicas

Se você se preocupa com a portabilidade, você vai cair echo e uso printf (1) :

printf '\012'

No meu terminal,

printf '\012' >>output.txt

funciona tanto para a representação octal do personagem ascii, eo hexadecimal correspondente:

printf '\xA' >>output.txt

O comando

echo -en '\012' >>output.txt

No entanto, não funciona corretamente. Somente hexadecimais parece trabalhar com echo -e. As remove -n o padrão de nova linha extra a partir de eco.

Eu levei não-ASCII a média Unicode, pelo menos no meu caso, mas printf "\x##" não foi suficiente para a minha solução de 2 bytes, então eu usei esta sintaxe ligeiramente diferente em vez disso:

> printf "\u25ba"
►
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top