shell内部变量

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参数…。 
 
 
#!/bin/bash
 
 printf '$$ %s\n' "$$"
 printf '$! %s\n' "$!"
 printf '$? %s\n' "$?"
 printf '$* %s\n' "$*"
 printf '$@ %s\n' "$@"
 printf '$# %s\n' "$#"
 printf '$0 %s\n' "$0"
 printf '$1 %s\n' "$1"
 printf '$IFS %s\n' "$IFS"
IFS_OLD=$IFS
IFS=','
for param in $2; do
echo $param
done
IFS=$IFS_OLD
 
执行 sh test.sh a b,c,d
输出:
$$ 5651
$! 
$? 0
$* a b,c,d
$@ a
$@ b,c,d
$# 2
$0 /data/build/test.sh
$1 a
IFS 
 
b
c
d

转载于:https://www.cnblogs.com/burgeen/p/3618072.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值