Eu pensei que isso seria bem simples
echo "1§2" | cut -d § -f 2
deve dar "2", certo? Mas o que quer que eu tente
echo "1§2" | cut -d § -f 2
echo "1§2" | cut -d \§ -f 2
echo "1§2" | cut -d "§" -f 2
echo "1§2" | cut -d '§' -f 2
Eu sempre recebo
cut: the delimiter must be a single character
Alguém sabe o porquê? § não parece ser um caractere especial.
echo 'a' | xxd -c 1
comecho '§' | xxd -c 1
. bem-vindo ao maravilhoso mundo do Unicode :)Respostas:
§ parece não ter um caractere de byte único, como indicado no comentário Usar sinal de seção § como delimitador de corte
cut
só pode trabalhar com caracteres de byte únicohttps://unix.stackexchange.com/a/163725 relacionado
fonte