我想要反转以下命令执行的操作:
$ echo $((62#a39qrT))
9207903953
即将把十进制数9207903953转换为62进制,并保持bash
标准的{0..9},{a..z},{A..Z}
。
我知道可以使用bc
实现此操作,但是需要手动转换每个字符。例如,目前我执行以下操作:
BASE62=($(echo {0..9} {a..z} {A..Z}))
for i in $(echo "obase=62; 9207903953" | bc)
do
echo -n ${BASE62[$i]} #Doesn't work if bc's output contains leading zeroes
done
一定有一种更为简便的方法来做到这一点。你知道更高效的方法吗?
编辑:更改了bc
输入。