Bashの変数に2^500を保存します。

Bashの変数に2^500を保存します。

2^500の値を変数に保存したいと思いますDELTA

私は仕事をします。

export DELTA=$(echo "scale=2; 2^500" | bc)

DELTAただし、これはに設定されていません3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376。代わりに設定されます。

32733906078961418700131896968275991522166420460430647894832913680961\
33796404674554883270092325904157150886684127560071009217256545885393\
053328527589376

私は次の答えを試しましたこの問題(3歳)、使用

export DELTA=$(echo "scale=2; 2^500" | bc | tr '\n' ' ') 

または

export DELTA=$(echo "scale=2; print 2^500" | bc | tr '\n' ' ')

しかし、それらのどれも変数を設定するために使用することはできず、エコーするだけです。どんなアイデアがありますか?

ベストアンサー1

GNU実装には環境変数(cf)bcがあります:BC_LINE_LENGTHman bc

~$ echo "scale=2; 2^500" | bc
32733906078961418700131896968275991522166420460430647894832913680961\
33796404674554883270092325904157150886684127560071009217256545885393\
053328527589376
~$ export BC_LINE_LENGTH=99999 #or better 0
~$ echo "scale=2; 2^500" | bc
3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376

おすすめ記事