【shell点滴】参数变量

参数变量故名思议就是用来操作输入参数的变量,知道用户输入了哪些参数,才可以进行相应的处理。

参数变量 作用
$1,$2 取第几个参数的意思
$* 取出所有的参数,解析参数的分割符环境变量 IFS 来决定,如果IFS 变了解析参数就会有问题
$@ 以空格为分割,自动取出所有的参数

看看几个例子

  • 第一中就是取出第几位的参数
#set lzz niu  apple
#echo "$1, $2, $3"
lzz, niu, apple

下标从1开始,取出了相应位置的参数

*后面两个我们放在一起看看

iuzhizhi@lzz-rmbp~ set lzz niu  apple
liuzhizhi@lzz-rmbp~ echo "$@"
lzz niu apple
liuzhizhi@lzz-rmbp~ echo "$*"
lzz niu apple

看起来好像一样啊,想起来了 $* 是通过 IFS变量来决定的啊,再试试

liuzhizhi@lzz-rmbp~ set lzz niu  apple
liuzhizhi@lzz-rmbp~ echo "$@"
lzz niu apple
liuzhizhi@lzz-rmbp~ echo "$*"
lzzniuapple

这个时 $@ 还是正常的,但是$* 就不正常了,所以我们尽量使用 $@ 在取全部参数

这是之前写过的一个脚本 shell 输入参数

参考

《linux 程序设计第二章》

声明:

本文出自 “orangleliu笔记本” 博客,转载请务必保留此出处http://blog.csdn.net/orangleliu/article/details/45774349 作者orangleliu 采用署名-非商业性使用-相同方式共享协议

上一篇:即时新闻展示插件jQuery News Ticker,超级简单!


下一篇:Lattice Diamond 学习之编译、检查和设置约束