Bashスクリプトは、いくつかの場所で次のプログラムを呼び出します。
numfmt --suffix=" B" --grouping 231210893
数値は毎回異なりますが、他のパラメータは同じままです。
これで、さまざまなパラメータをさまざまな呼び出しから移動して、中央で定義し、簡単に変更できるようにします。私の試みは次のとおりです
NUMFMT='--suffix=" B" --grouping'
...
numfmt $NUMFMT 231210893
残念ながら、これは機能しません。引用符はある時点で削除され、numfmt
説明できない追加の引数について文句を言いますB
。私は定義と使用法の両方で異なる引用を使用して他の多くのバージョンを試しましたが、NUMFMT
役に立ちませんでした。
これを正しく行うにはどうすればよいですか?あまり複雑ではない場合、私のバージョンは機能しませんが、他のバージョンが機能する理由も知りたいです。
答え1
配列を試してください。
NUMFMT=( --suffix=" B" '--grouping' )
....
numfmt "${NUMFMT[@]}" 231210893
答え2
これは良いケースではありませんかalias
?
$ alias nfmtB='numfmt --suffix=" B" --grouping'
$ nfmtB 324235345656
324.235.345.656 B