Chinaunix首页 | 论坛 | 博客
  • 博客访问: 372455
  • 博文数量: 75
  • 博客积分: 1486
  • 博客等级: 上尉
  • 技术积分: 675
  • 用 户 组: 普通用户
  • 注册时间: 2010-07-22 18:38
个人简介

...

文章分类
文章存档

2023年(1)

2021年(3)

2020年(2)

2018年(1)

2017年(1)

2016年(10)

2015年(34)

2011年(14)

2010年(9)

分类: LINUX

2015-08-14 18:41:33

shell中字符串和数组操作
数组
声明一个数组:

点击(此处)折叠或打开

  1. 数组赋值(空格隔开):
  2. (1) array=(var1 var2 var3 ... varN
  3. (2) array=([0]=var1 [1]=var2 [2]=var3 ... [n]=varN)
  4. (3) array[0]=var1
  5.     arrya[1]=var2
  6.     ...
  7.     array[n]=varN
  8. 或者
  9. array_name=(
    value0
    value1
    value2
    value3
    )

计算数组元素个数:
${#array[@]}  或者  ${#array[*]}
BASH的特殊参数 @ 和 * 都表示“扩展位置参数,从1开始”,但形式稍有差异,但在数组里使用好像是可以通用的

读取数组元素:

点击(此处)折叠或打开

  1. ${数组名[下标]}

遍历数组元素:

点击(此处)折叠或打开

  1. filename=(`ls`)
  2. for var in ${filename[@]};do
  3.     echo $var
  4. done

删除数组操作:

点击(此处)折叠或打开

  1. unset array[1]     #删除数组中第一个元素
  2. unset array        #删除整个数组



字符串处理
字符串移动
echo ${var:位置:字符个数}

点击(此处)折叠或打开

  1. echo ${var:0:3}:      左边第一个字符开始 取3个字符 0表示位置 3表示字符个数(默认从左边开始计算
  2. echo ${var:0-5}:      右边开始的第5个字符算起
  3. echo ${var:0-5:3}:    右边开始的第5个字符算起,取三个字符
例子:

点击(此处)折叠或打开

  1. yinmo@Master:~$ string_var="abcdefghijklmnopq"
  2. yinmo@Master:~$ echo ${string_var:0:3}
  3. abc
  4. yinmo@Master:~$ echo ${string_var:0-5}
  5. mnopq
  6. yinmo@Master:~$ echo ${string_var:0-5:3}
  7. mno
  8. yinmo@Master:~$


目录命名也是一门艺术 像下面这个操作 如果目录命名够叼 直接第二行就可以了

点击(此处)折叠或打开

  1. cat file |grep nutcracker |grep -v 'sh' |awk '!/grep/{print $13}'
  2. cat file |grep nutcracker |awk '!/grep/{print $13}'

点击(此处)折叠或打开

  1. root 52853 0.0 0.0 106060 1268 ? Ss 15:00 0:00 /bin/sh -c /data/soft/monitor_twemproxy/z_nutcracker/t_twemproxy_monitor.sh > /data/soft/monitor_twemproxy/z_nutcracker/log/crontab.log 2>&1
  2. root 52856 0.0 0.0 106060 1432 ? S 15:00 0:00 /bin/bash /data/soft/monitor_twemproxy/z_nutcracker/t_twemproxy_monitor.sh
  3. root 53607 0.0 0.0 103244 892 pts/1 S+ 15:00 0:00 grep nut
  4. root 61189 0.2 0.0 20744 2272 ? Sl Jul23 110:10 /data/soft/twemproxy1/sbin/nutcracker -s 22222 -d -c 
  5. root 61497 0.1 0.0 20460 2056 ? Sl Jul23 92:52 /data/soft/twemproxy2/sbin/nutcracker -s 22223 -d -c 
  6. root 91994 0.0 0.0 19400 1092 ? Sl Aug18 5:55 /data/soft/twemproxy-oa/sbin/nutcracker -s 22224 -d -c 



待续。。。。。。



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