shell脚本中的$#表示什么意思呢?
题目
shell脚本中的$#表示什么意思呢?
# /bin/sh
if [ $# -ne "1" ]
then
echo "usage:$0 进程个数"
exit 1
fi
如上例,$#表示什么呢?
我知道$0,$1,$2在awk中的意思,不过,直接写在shell中,$0,$1,$2应该表示的分别是shell名,shell文件接受的第一个参数、第二个参数的意思吧?
答案
shell脚本执行过程中 把第一个字符串作为脚本名称(或程序名称)处理,第二、第三.都作为参数处理.shell会将这些参数默认的赋给变量 1 2 3 .所以当你echo $1 $2的时候看到的就是参数变量的值.
解答一下$#的问题:这里$#是计算输入参数的个数
还有一些有用的算法:$@ 代表所有输入的参数;$* 同上
举一反三
我想写一篇关于奥巴马的演讲的文章,写哪一篇好呢?为什么好
最新试题
- 雅鲁藏布大峡谷在同一坡面上,从高到低形成了九个垂直自然带,为什么呈现出不同的自然景观?
- 1)一个两位数,十位上的数字与个位上的数字的和是15,如果把这两个数字对调,那么得到的数比原数的的一半大21,求原来的两位数.(用方程解)
- 王师傅计划加工360个零件,结果第一天完成了任务的6分之1,第二天完成的是第一天的3分之2,还有多少个零件没有完成?
- 极坐标方程ρ=sin²θ化成普通方程
- (1/2)求英语作文,假如你是李华假期中想到伦敦的一所学校学习英语请你给学校付责人写信内容如下一介绍你...
- 怎样三笔画四周梯形围成中间是正方形
- 如果三角形的一边长为8cm,另两条边长为x,则x的取值范围为______.
- 非洲最高峰、世界最高峰~
- 英语的句式转换:My watch is (broken)就括号部分提问.只能5个单词.
- 谁知道:8,11,14-Docosatrienoic acid,methyl ester 中文名是什么不啊?
热门考点