Seu arquivo começa com uma marca de pedido de byte UTF-8 . É o símbolo unicode U + FEFF que é codificado como três bytes em UTF-8. Esses três bytes aparecem como 357 273 277
quando você os imprime na base 8.
Para o comando sed
, esses bytes no início da linha significa que 1
não é, na verdade, o primeiro caractere nessa linha. Muitas outras ferramentas irão tratá-lo da mesma maneira.
Você precisa remover a lista de materiais antes de fazer outro processamento para obter um resultado útil. Por exemplo, você pode iniciar seu script sed
com s/^\xef\xbb\xbf//
para remover a lista de materiais. Seu comando completo então se tornaria
sed -e 's/^\xef\xbb\xbf//;s/^[0-9]//'