免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 826 | 回复: 2
打印 上一主题 下一主题

来段小程序 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-01-08 05:24 |只看该作者 |倒序浏览
小虾拿到这段程序,左看右看都未看懂,还望哪位大师指引
1 #!/usr/bin/ksh
2
3 pick1() {
4 eval 'echo $' "$pick_index"
6 }
7 pick() {
8 0LD_IFS=IFS
9 delimiter="$1"
10 shift
11 pick_index="$1"
12 shift
13 IFS=" "$delimiter
14 pick1 $*
15 IFS=$OLD_IFS
16 unset pick_jndex
17 }
18
19 version=$(uname -r)
20 echo $(pick . 1 $version).$(pick . 2 $version)

论坛徽章:
0
2 [报告]
发表于 2005-01-08 14:19 |只看该作者

来段小程序

uname -r是获取操作系统版本号:
我的solaris9显示是5.9

shift是将参数变量上移一位.
如:原来$1=. $2=1 $3=5.9
shift后就是$1=1 $2=5.9
再shift后就是$1=5.9

unset就是把变量释放掉.

你上面的pick_jndex应该是pick_index吧.

论坛徽章:
0
3 [报告]
发表于 2005-01-10 06:15 |只看该作者

来段小程序

不好意思打错了 应该是index
我的理解如下,还请指教
给了pick 三个参数
"." "1" 和 "$version"
第一个参数给了:delimiter=.
第二个参数给了:pick_index=1
然后通过pick1 $*
把这三个参数传给了funktion pick1()
而pick1 的功能就是显示pick_index的值
不知道理解的对不对?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP