我使用了「DC」命令從十六進制轉換爲十進制如何防止DC,可以打破輸出
dc -e "16i$1p"
的問題是,它打破大數輸出
795717178255658627448611597034913344160729841275756347904742363029055\
1952200534008528895
如何防止此行爲?有沒有一個選項或參數傳遞來禁用此?
我使用了「DC」命令從十六進制轉換爲十進制如何防止DC,可以打破輸出
dc -e "16i$1p"
的問題是,它打破大數輸出
795717178255658627448611597034913344160729841275756347904742363029055\
1952200534008528895
如何防止此行爲?有沒有一個選項或參數傳遞來禁用此?
BC似乎做同樣的事情。在70個字符限制,這一規範列出來:
http://pubs.opengroup.org/onlinepubs/000095399/utilities/bc.html
關閉我的頭頂,只是後處理:
echo "ibase=16; FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF" | bc | perl -pe's/\\\n//'
的問題是古老而冷淡的,但我認爲應該注意在GNU dc
和bc
的更新版本上,可以通過環境變量
n=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
n+=FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
DC_LINE_LENGTH=0 dc -e "16i${n}p"
BC_LINE_LENGTH=0 bc <<<"ibase=16; $n"
加''| tr -d'\\\\\ n'' – Cyrus