介绍如何在Linux下用bc命令进行快速的数字进制转换。

  我想Windows里,数字进制转换最方便的就是自带的calc计算器,但是它原没有我们可爱的Linux方便。Linux下,我们在term里敲 几下键盘就可以做数字进制转换了。当然,你如果自己转换更快,那我比较佩服。这里,我们用到bc命令。bc命令是一个很好用的term计算器。我们要用到 bc的ibase和obase方法。

  ibase是输入数字的进制,而obase就是输出数字的进制了。很好记,i是input,o是output。

  如果用一条命令来转数字,可以用echo命令和管道结合bc。如下:

  10进制转2进制:

  $ echo "obase=2;ibase=10;100" | bc

         1100100

  10进制转16进制:

  $ echo "obase=16;ibase=10;100" | bc

         64

  16进制转10进制:

  $ echo "ibase=16;obase=2;F1" | bc

        11110001

  注意,16进制数字的F要大写,如果小写结果是不对的,不信试试:

  $ echo "ibase=16;obase=2;f1" | bc

        0

  还可以用bc的交互模式来转换,最后Ctrl-D,或者输入quit退出。

  ~$ bcbc 1.06.94Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.This is free software with ABSOLUTELY NO WARRANTY.For details type `warranty'. ibase=16obase=2FF;F11111111111110001quit