Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1188498
  • 博文数量: 253
  • 博客积分: 5892
  • 博客等级: 大校
  • 技术积分: 1942
  • 用 户 组: 普通用户
  • 注册时间: 2011-02-24 14:20
文章分类

全部博文(253)

文章存档

2012年(98)

2011年(155)

分类: LINUX

2012-02-24 17:42:29

shell中的数组使用方法

01$ arr=(123 34 3 5)
02$ echo $arr // 默认获取第一个元素
03> 123
04$ echo ${arr[1]} // 通过下标访问
05> 34
06$ echo ${arr[@]} // 访问整个数组 ,@或者* 获取整个数组
07> 123 34 3 5
08$ echo ${#arr[@]} // 获取数组的长度(最大下标) ,#获取长度 数组中是最后一个下标
09> 3
10$ echo ${#arr[3]} // 获取字符串长度
11> 1
12$ echo ${arr[@]:1:2} // 切片方式获取一部分数组内容
13> 34 3
14$ echo ${arr[@]:2} // 从第二个元素开始
15> 3 5
16$ echo ${arr[@]::2} // 到第二个元素
17> 123 34
array 的模拟操作

01push:
02array=(”${array[@]}” $new_element)
03 
04pop:
05array=(${array[@]:0:$((${#array[@]}-1))})
06 
07shift:
08array=(${array[@]:1})
09 
10unshift
11array=($new_element “${array[@]}”)
12 
13function del_array {
14local i
15for (( i = 0 ; i < ${#array[@]} ; i++ ))
16do
17if [ "$1" = "${array[$i]}” ] ;then
18break
19fi
20done
21del_array_index $i
22}
23 
24function del_array_index {
25array=(${array[@]:0:$1} ${array[@]:$(($1 + 1))})
26}


阅读(1570) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~