Shell基础——位置参数

本文探讨了Shell脚本中的位置参数概念,包括如何通过${N}或$N引用它们,它们在调用shell及执行函数时的作用,以及如何使用set和shift命令管理位置参数。注意,位置参数不能直接通过赋值语句进行赋值。

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

位置参数是用一位或多位数字(除了0)表示的参数,位置参数N可以引用为${N},或者当N由单个数字组成时,引用为$N
位置参数是在调用shell时从shell参数中分配的

$ bash -s a b c
$ echo $1 $2 $3
a b c
$ cat script
echo $1 $2 $3
$ bash script a b c
a b c

在执行shell函数时临时替换位置参数

$ bash -s a b c
$ func () { echo $1 $2 $3; }
$ func e d f
e d f
$ echo $1 $2 $3
a b c

set内置命令可以重新为位置参数赋值,set和shift内置命令还可以撤销位置参数

$ set -- e f g
$ echo $1 $2 $3
e f g

位置参数不能用赋值语句赋值

$ $1=123
e=123: command not found
$ set --
$ echo $1 $2 $3

$ set -- e f g
$ shift 1
$ echo $1 $2 $3
f g
$ shift $#
$ echo $1 $2 $3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值