a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 124|回复: 0

[红帽认证] linux红帽认证:在Linux中对Bash变量内容修改的方法(2)

[复制链接]
发表于 2012-8-4 12:19:50 | 显示全部楼层 |阅读模式
  ◆3 、承上题,如果是从后面开始,删除/*呢?
# y7 k$ L& a1 o- m  echo ${vbird%%/*/}
* b7 v, R- |. a7 D! l  /home/vbird/testing/testing.x.sh——都没有删除& a% D$ T  Q) ]0 I( L+ y) L5 g
  echo ${vbird%%/*}5 B* w4 f8 D: w, B$ n
  --------都被删除了
1 b. w& k8 l8 J9 i2 X) `4 b  echo ${vbird%/*}0 b& g- s9 D: r7 j! Q9 I! W% h
  /home/vbird/testing ——只删除 /testing.x.sh部分中华考试网(www.Examw。com)
! |" K4 }3 v9 j& l( o6 Q  在这个例子中要特别注意,那个% 比对的是“最后面那个字符”的意思,所以第一个当然不对,因为vbird 这个变量的内容最后面是h 而不是/.至于%%/*则是删除“最长的那个/*”,当然就是全部,而%/* 则是最短的那个。(自注:最短最长同上注,虽然% 表示反向的比对,但需注意的是在${variable} 中输入的时候仍然按着从左到右的顺序,即与变量内容中的字符的顺序相同,中国自学编程网,www.zxbc.cn 。如下例:
6 \* E+ Z9 Q% C  @/ z/ B, S  echo ${vbird%t*h}
2 @1 I2 w. z7 y  /home/vbird/testing/tes ——t.ing.x.sh被删除了
# W. r6 @/ l$ i; E/ m5 S8 B  如果是  |* M$ j" a- J) R% e
  echo ${vbird%h*t}. v7 v% h3 B" ~& M$ [0 j/ ]
  /home/vbird/testing/testing.x.sh——则输出没有变化(因为比对都是与第一个字符比,变量内容的第一个字符为h ,而命令中给出的第一个字符为t ,与真实的变量内容不符。)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-31 12:57 , Processed in 0.358249 second(s), 22 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表