## ## OSSP due - Dynamic User Environment ## Copyright (c) 1994-2004 Ralf S. Engelschall ## Copyright (c) 1994-2004 The OSSP Project ## ## This file is part of OSSP due, a dynamic user environment ## which can found at http://www.ossp.org/pkg/tool/due/ ## ## Permission to use, copy, modify, and distribute this software for ## any purpose with or without fee is hereby granted, provided that ## the above copyright notice and this permission notice appear in all ## copies. ## ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ## SUCH DAMAGE. ## ## due.calc.sh: DUE module for command line calculations ## # define {bin,oct,dec,hex}2{bin,oct,dec,hex} commands _bases="bin:02 oct:08 dec:10 hex:16" for _i in $_bases; do for _o in $_bases; do [ ".$_i" = ".$_o" ] && continue eval "${_i/:*/}2${_o/:*/} () { echo \"obase=${_o/*:/}; ibase=${_i/*:/}; \$1\" | bc -q }" done done unset _bases _i _o