Shell 간단 한 계산기 기능 실현

Shell 은 간단 한 계산기 기능 을 실현 합 니 다. 스 크 립 트 는 다음 과 같 습 니 다.
[root@nfs scripts]# cat jisuan.sh
#!/bin/bash
print_usage(){
    printf $"USAGE:$0 NUM1 {+|-|*|/} NUM2
"     exit 1 } # 3 if [ $# -ne 3 ]   then     print_usage fi firstnum=$1 secondnum=$3 op=$2 # if [ -n "`echo $firstnum|sed 's/[0-9]//g'`" ];then     print_usage fi if [ "$op" != "+" ]&&[ "$op" != "-" ]&&[ "$op" != "*" ]&&[ "$op" != "/" ];then    print_usage fi if [ -n "`echo $secondnum|sed 's/[0-9]//g'`" ];then     print_usage fi echo "${firstnum}${op}${secondnum}=$((${firstnum}${op}${secondnum}))"

디버그:
[root@nfs scripts]# sh -x jisuan.sh 6 + 4
+ '[' 3 -ne 3 ']'
+ firstnum=6
+ secondnum=4
+ op=+
++ sed 's/[0-9]//g'
++ echo 6
+ '[' -n '' ']'
+ '[' + '!=' + ']'
++ sed 's/[0-9]//g'
++ echo 4
+ '[' -n '' ']'
+ echo 6+4=10
6+4=10
[root@nfs scripts]# sh -x jisuan.sh 5 \* 5
+ '[' 3 -ne 3 ']'
+ firstnum=5
+ secondnum=5
+ op='*'
++ sed 's/[0-9]//g'
++ echo 5
+ '[' -n '' ']'
+ '[' '*' '!=' + ']'
+ '[' '*' '!=' - ']'
+ '[' '*' '!=' '*' ']'
++ sed 's/[0-9]//g'
++ echo 5
+ '[' -n '' ']'
+ echo '5*5=25'
5*5=25

주의: 
  • "- x" 는 디 버 깅 을 표시 하고 실행 절 차 를 볼 수 있 습 니 다
  • 대응 "*" 는 "\" 전의
  • 를 추가 해 야 합 니 다.

    좋은 웹페이지 즐겨찾기