shift

参数左移指令 :每执行一次,参数序列顺次左移一个位置,$#的值减1
用于分别处理每个参数,移出去的参数,不可再用
5.shell的shift参数_bash
举例:
算所有参数的和
vim add.sh

if [ $# -le 0 ]  # 判断参数数目不为空
then
echo "error:not canshu"
exit   
fi
sum=0
while [ $# -gt 0 ] 
do
sum=`expr $sum + $1`
shift  #参数左移,最开始那个删除
done
echo $sum

######################################
./add.sh 123 321 456
900

函数定义:

把一个功能封装起来,使用时直接调用函数名,好处是模块化,可读性强
shell函数使用:
函数名 ()
{
命令序列
}
或者:
function 函数名 () #function 可以不写
{
命令序列
}

调用函数:

函数名 参数一 参数二

举例:

#! /bin/bash
abc=123
echo $abc
example ()
{
abc=456
}
example
echo $abc

#####此文纯属小白笔记,有不对之处大佬使劲喷,杠精请绕过,#####
5.shell的shift参数_函数定义_02