Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- INPUT=$1
- PAT="^([0-9]+|([0-9]+).([0-9]+))([GgMmKk])?$"
- if [[ ! $INPUT =~ $PAT ]]; then
- echo "error: bad format"
- exit 1
- fi
- VALUE=$(echo "$INPUT" | sed "s/[^0-9\.]//g")
- case "$INPUT" in
- *G|*g)
- echo $(echo "$VALUE*1024*1024*1024" | bc);;
- *M|*m)
- echo $(echo "$VALUE*1024*1024" | bc);;
- *K|*k)
- echo $(echo "$VALUE*1024" | bc);;
- *)
- PAT_NUM="^[0-9]+$"
- if [[ $INPUT =~ $PAT_NUM ]]; then
- echo "$VALUE"
- else
- echo "NaN"
- fi
- ;;
- esac
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement