Quero criar uma nova coluna numérica em um formato não legível por humanos em um csv usando sed. Para isso, vou criar uma função e aplicá-la no sed via sed 's/(.*)/foo \1/e
. Agora testei cat $file | cut -f1 -d" " | numfmt --from=iec --to=none
diretamente no arquivo e ele retorna exatamente o que procuro. Quando tento colocá-lo em uma função:
foo(){cat $1 | cut -f1 -d" " | numfmt --from=iec --to=none}
numfmt fica muito infeliz e insiste que none}
é um formato inválido; quando adiciono um espaço entre "nenhum" e a chave, numfmt fica esperando pacientemente pela entrada, em vez de fechar a definição da função.
O que estou perdendo aqui?
Você precisa de um espaço depois
{
e um;
antes}
:Limpando um pouco mais:
ou: