免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2625 | 回复: 1

再來點小技巧 [复制链接]

论坛徽章:
0
发表于 2007-07-04 22:25 |显示全部楼层
Bash 裡有變量擴展 ${varffset:length} ${varffset} 大家都知道,
一般會由右到左, 但其實可由左到右的,看 screenshot
[victor@localhost ~]$ echo ${USER}
victor
[victor@localhost ~]$ echo ${USER:1}
ictor
[victor@localhost ~]$ echo ${USER:5:1}
r
[victor@localhost ~]$ echo ${USER-1)}
r
[victor@localhost ~]$ echo ${USER-2)}
or
[victor@localhost ~]$ echo ${USER-5)}
ictor
[victor@localhost ~]$

但KSH 好像不成....

bash3.X 多了個內建變量, $BASH_ARGV , 那是將命令列上的參數帶入這個變量裏,以數組出現,
${BASH_ARGV[0]} 是命令列參數最後一個,由左到右,看 screenshot
victor@localhost ~]$ cat aa.sh
#! /bin/bash
i=0

for j
do
  echo ${BASH_ARGV[$i]}
   let "i += 1"
done
[victor@localhost ~]$ sh aa.sh 1 2 3 4 5
5
4
3
2
1
[victor@localhost ~]$

如有錯誤,敬請指正,歡迎交流 ^^

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
发表于 2007-07-04 23:42 |显示全部楼层
学习~~~, 第一个ABS里有讲
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP