两非空数求和t1.sh

38 篇文章 0 订阅
22 篇文章 0 订阅

写一个shell脚本,进行两个数字的相加,如果没有输入参数就输出错误信息和一行使用说明

最简洁的:

#!/bin/bash
if [ $# -eq 0 ];then
echo "Error :There is no input."
exit 1
fi
if [ $# -eq 1 ];then
echo "Error :Misss one input.You shoud use $0 digital1 digital2"
exit 1
fi
a=$1
b=$2
let s=a+b
echo "$1 and $2 sum is : $s"

或者

#!/bin/sh

echo "Please input the first value:"
read a
test -z "$a"
flag=$?
if [ $flag != 0 ] ;then
    echo "Please input the second value:"
else 
    echo "Error: Miss the first value."
    exit    
fi
    read b
    test -z "$b"
    flag=$?    
if [ $flag != 0 ]; then
        sum=$((a+b))
        echo "The above two values' sum is"
        echo "$sum"
else
    echo "Error:Miss the second value."
fi

类似的:

#!/bin/bash
echo -n "Please input the 1st digital:"
read a
echo "You input digital is: $a"
test -z "$a"
flag=$?
if [ $flag == 0 ];then
    echo "Error:You didn't input the 1st value."
    exit 1
fi
echo -n "Please input the 1st digital:"
read b
echo "You input digital is: $b"
test -z "$b"
flag=$?
if [ $flag == 0 ];then
    echo "Error:You didn't input the 2nd value."
    exit 1
fi
s=$((a+b))
echo "$a and $b sum is $s"
exit 0

习题集:http://www.jb51.net/article/51574.htm

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
SELECT t1.id, t1.[kh] AS '客户', t1.[lrsj] AS '录入时间', t1.[htbh] AS '合同编号', t1.[rq] AS '签订日期', t1.[htqsrq] AS '起始日期', t1.[htjzrq] AS '截止日期', t1.[zjey] AS '总金额', t1.[hjzld] AS '总吨数', t1.[lrsj] AS '创建时间', t1.[chpt] AS '撮合平台', CAST ( t1.[htwj] AS VARCHAR ( MAX ) ) AS '合同文件', STUFF( ( SELECT ',' + CONVERT ( VARCHAR, CASE WHEN ISNUMERIC( REPLACE( t2.ppcs, ',', '' ) ) = 1 THEN CAST ( REPLACE( t2.ppcs, ',', '' ) AS FLOAT ) END ) FROM uf_xsht_dt1 t2 WHERE t1.id = t2.mainid FOR XML PATH ( '' ) ), 1, 1, '' ) AS '品牌', STUFF( ( SELECT ' ' + CONVERT ( VARCHAR, CASE WHEN ISNUMERIC( REPLACE( t2.hsdjyd, ' ', '' ) ) = 1 THEN CAST ( REPLACE( t2.hsdjyd, ' ', '' ) AS FLOAT ) END ) FROM uf_xsht_dt1 t2 WHERE t1.id = t2.mainid FOR XML PATH ( '' ) ), 1, 1, '' ) AS '销售单价', (SELECT SUM ( sjfk ) from uf_xshksj2 WHERE cght=t1.id ) AS '实际已收', (SELECT SUM ( hkje ) from uf_xshksj2 WHERE cght=t1.id ) AS '已收货款', ( SELECT SUM( sjfk ) FROM uf_xshksj2 WHERE kxlx = 0 AND cght = t1.id ) AS '订金' FROM uf_xsht t1 INNER JOIN uf_xsht_dt1 t2 ON t1.id = t2.mainid LEFT JOIN uf_xshksj2 t3 ON t1.id = t3.cght GROUP BY t1.id, t1.[kh], t1.[lrsj], t1.[htbh], t1.[rq], t1.[htqsrq], t1.[htjzrq], t1.[zjey], t1.[hjzld], t1.[chpt], CAST ( t1.[htwj] AS VARCHAR ( MAX ) );中按ID查询计算收款比例‘已收比例’,当订金与已收货款的和小于总金额时,比例公式为已收货款除以总金额;否则为订金与已收货款求和再除以总金额
07-13

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值