Experimente matrizes:
NUMFMT=( --suffix=" B" '--grouping' )
....
numfmt "${NUMFMT[@]}" 231210893
Em um script Bash, eu chamo um programa como este em vários lugares:
numfmt --suffix=" B" --grouping 231210893
Onde o número é diferente a cada vez, mas os outros parâmetros permanecem os mesmos.
Gostaria agora de mover os outros parâmetros para fora das muitas chamadas diferentes, para que eles sejam definidos centralmente e possam ser facilmente alterados. Minha tentativa foi assim:
NUMFMT='--suffix=" B" --grouping'
...
numfmt $NUMFMT 231210893
Infelizmente, isso não funciona. Os sinais de cotação são removidos em algum momento, e numfmt
reclama sobre um argumento extra não interpretável B
. Eu tentei muitas outras versões, usando outras citações tanto na definição quanto no uso de NUMFMT
, sem sucesso.
Como faço isso corretamente? E se não for muito complicado, eu também gostaria de entender por que minha versão não funciona e (espero) que outra funcione.
Este não seria um caso excelente para um alias
?
$ alias nfmtB='numfmt --suffix=" B" --grouping'
$ nfmtB 324235345656
324.235.345.656 B
Tags bash string bash-expansion