$#,脚本运行时后跟的参数个数
#! /bin/bash

case "$#" in
0) printf "Enter a number: "
read
n=$REPLY
;;
*) n=$1
;;
esac
x=$(( (1 + $n) * $n / 2 ))
echo "Tne value of 1 + 2 + 3....+$n = $x"
这段shell的意思:
如果参数个数为零,就提示让你输入一个数字;
如果参数个数不为零,则取第一个参数的值
然后计算1到这个数字的和值,输出!

echo >>是追加,echo >是覆盖


$*和$@以及$#的区别
举例说:
脚本名称叫test.sh 入参三个: 1 2 3
运行test.sh 1 2 3后
$*为"1 2 3"(一起被引号包住)
$@为"1" "2" "3"(分别被包住)
$#为3(参数数量)

对于上一条指令的执行情况可以使用:echo $? 若出现0则代表上条指令执行正确,若为1--255则代表是错误的

 
 
 

相关文章:

  • 2021-10-22
  • 2021-06-23
  • 2022-02-27
  • 2021-11-13
  • 2021-06-27
  • 2022-02-27
  • 2021-11-10
猜你喜欢
  • 2022-12-23
  • 2022-02-08
  • 2021-11-20
  • 2021-04-27
  • 2021-07-06
  • 2022-12-23
相关资源
相似解决方案