initial commit
This commit is contained in:
68
chapter14/equate_base_8_to_10.ksh
Executable file
68
chapter14/equate_base_8_to_10.ksh
Executable file
@@ -0,0 +1,68 @@
|
||||
#!/usr/bin/ksh
|
||||
#
|
||||
# SCRIPT: equate_base_8_to_10.ksh
|
||||
# AUTHOR: Randy Michael
|
||||
# DATE: 07/07/2007
|
||||
# REV: 1.2.P
|
||||
#
|
||||
# PURPOSE: This script is used to convert a base 8 number
|
||||
# to a base 10 decimal representation.
|
||||
# This scripts expects that a base 8 number
|
||||
# is supplied as a single argument.
|
||||
#
|
||||
# EXIT CODES:
|
||||
# 0 - Normal script execution
|
||||
# 1 - Usage error
|
||||
#
|
||||
# REV LIST:
|
||||
#
|
||||
#
|
||||
# set -x # Uncomment to debug this script
|
||||
# set -n # Uncomment to check command syntax without any execution
|
||||
#
|
||||
#################################################
|
||||
# DEFINE FILES AND VARIABLES HERE
|
||||
#################################################
|
||||
|
||||
SCRIPT_NAME=`basename $0`
|
||||
typeset -i BASE_8_NUM
|
||||
typeset -i BASE_10_NUM
|
||||
|
||||
#################################################
|
||||
# DEFINE FUNCTIONS HERE
|
||||
#################################################
|
||||
|
||||
function usage
|
||||
{
|
||||
echo "\nUSAGE: $SCRIPT_NAME base_8_number"
|
||||
echo "\nEXAMPLE: $SCRIPT_NAME 2774"
|
||||
echo "\nWill return the decimal base 10 number 1532 ...EXITING...\n"
|
||||
}
|
||||
|
||||
#################################################
|
||||
# BEGINNING OF MAIN
|
||||
#################################################
|
||||
|
||||
# Check for a single command line argument
|
||||
|
||||
if [ $# -ne 1 ]
|
||||
then
|
||||
echo "\nERROR: A base 8 number must be supplied..."
|
||||
usage
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Check that this single command line argument is a octal number!
|
||||
|
||||
case $1 in
|
||||
+([-0-8])) BASE_8_NUM=$1
|
||||
;;
|
||||
*) echo "\nERROR: $1 is NOT a base 7 number"
|
||||
usage
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
BASE_10_NUM=$((8#${BASE_8_NUM}))
|
||||
|
||||
echo $BASE_10_NUM
|
||||
Reference in New Issue
Block a user