2

在 Linux 或 OS X 中是否有一种优雅的方法可以做到这一点?

$ echo -n 'hello' | base32

或者更好的是,只使用纯 bash 语法来做同样的事情。例如,这段代码不使用外部命令,只使用 bash。

toBinary(){
    local n bit
    for (( n=$1 ; n>0 ; n >>= 1 )); do  bit="$(( n&1 ))$bit"; done
    printf "%s\n" "$bit"
}

$ toBinary 304       => 100110000

我对 Perl 或 Python 解决方案不感兴趣。网络上到处都是它们。我也熟悉所有正常的bcawk hack。

我更感兴趣的是理解从 ASCII 文本到 base32 或 base64 的算法,而不是通过诡计获得快速简单的解决方案。

这是我迄今为止最好的 - http://code.tutsplus.com/tutorials/base-what-a-practical-introduction-to-base-encoding--net-27590

4

0 回答 0