Linux Shell脚本编程--变量$#,$@,$*,$?,$0,$1,$2的含义解释

本文详细介绍了 Linux Shell 中的特殊变量 $#, $@, $0, $1, $2 的含义及用途,并通过示例展示了这些变量如何在实际脚本中应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux中shell变量$#,$@,$0,$1,$2的含义解释:

linux中shell变量$#,$@,$0,$1,$2的含义解释:
变量说明:
$$
Shell本身的PID(ProcessID)
$!
Shell最后运行的后台Process的PID
$?
最后运行的命令的结束代码(返回值)
$-
使用Set命令设定的Flag一览
$*
所有参数列表。如"$*"用「"」括起来的情况、以"$1 $2 … $n"的形式输出所有参数。
$@
所有参数列表。如"$@"用「"」括起来的情况、以"$1" "$2" … "$n" 的形式输出所有参数。
$#
添加到Shell的参数个数
$0
Shell本身的文件名
$1~$n
添加到Shell的各参数值。$1是第1参数、$2是第2参数…。

示例:

1 #!/bin/bash
2 #
3 printf"The complete list is %s\n""$$"
4 printf"The complete list is %s\n""$!"
5 printf"The complete list is %s\n""$?"
6 printf"The complete list is %s\n""$*"
7 printf"The complete list is %s\n""$@"
8 printf"The complete list is %s\n""$#"
9 printf"The complete list is %s\n""$0"
10 printf "The complete list is %s\n" "$1"
11 printf "The complete list is %s\n" "$2

结果:

[Aric@localhost ~]$ bashparams.sh 123456 QQ
The complete listis24249
The complete listis
The complete listis0
The complete listis123456 QQ
The complete listis123456
The complete listisQQ
The complete listis2
The complete listisparams.sh
The complete listis123456
The complete listisQQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值