Shell 参数解释与示例($1, $2, ..., $#, $@, $*, $$, $?)

Shell 参数相关解释

符号解释

符号解释
$1返回第一个参数
$2返回第二个参数
$#返回参数个数
$@返回所有参数,可用for in 读取每个参数
”$@“返回所有参数,可用for in 读取每个参数
$*返回所有参数,可用for in 读取每个参数
“$*”返回所有参数,但for in读取到的是所有字符串拼接的一行字符串。也就是说,无论传参args1, args2, … 的个数有多少,最终返回值是”args1 args2 …“,只有一次循环。
$$返回当前PID
$?返回上一条command执行状态, 0表示pass,其他值表示Fail

效果图

效果图

代码

#!/bin/bash

echo -e "function args example:"
echo -e "\$1 is: \033[31m$1\033[0m, \$2 is \033[32m$2\033[0m, \$3 is \033[33m$3\033[0m"
echo -e "\$# is representative of the number of parameters, which is: $#."
echo -e "\$@ is $@."
echo -e "\$* is $*."
echo "\$@:"
for i in $@
do
    echo "for i in \$@, i is $i"
done
echo -e "\033[32m\"\$@\":\033[0m"
for i in "$@"
do
    echo "for i in \"\$@\", i is $i"
done
echo "\$*:"
for i in $*
do
    echo "for i in \$*, i is $i"
done
echo -e "\033[32m\"\$*\":\033[0m"
for i in "$*"
do
    echo "for i in \"\$*\", i is $i"
done
echo "\$\$ is process ID: $$"
echo "\$? is the last command status or return, the default is 0/pass and others/fail, eg:"
echo "\$? is $?"
ll
echo "command ll do not exist, \$? is $?"
``

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值