a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 94|回复: 0

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

[复制链接]
发表于 2012-8-4 12:19:50 | 显示全部楼层 |阅读模式
  我们知道两种对变量取胜的方法:
# g. h3 ]4 k2 k" a' q  echo $HOME echo ${HOME}
& O$ a# `; R3 R3 m9 T" @6 O- ^  在echo ${variable}的方法中,还可以对变量的内容进行修改,只要加上一些字符标志,后面再接着使用比对字符串,就可以修改变量的内容了。假设变量名为:vbird ,并且内容为/home/vbird/testing/testing.x.sh
- q$ g. f8 ~! U7 R1 _6 d  ◆1 、完整呈现vbird 这个变量:4 n- D6 y- I7 o( f1 R
  vbird="/home/vbird/testing/testing.x.sh"
6 E; ^- m* x- F0 z7 @5 B- E  d. e  echo ${vbird}: t* y5 }" k; O1 `8 N. [# e
  /home/vbird/testing/testing.x.sh6 c. g, p, Z2 ]. _/ d3 ?0 X% _
  ◆2 、在vbird 变量中,从最前面开始比对
5 _* G' R6 H$ e" O+ |  若开头为 /,则删除两个/ 之间的所有数据,即 /*/
9 K7 x- V+ X# h% A1 l" s  echo ${vbird##/*/}
1 e2 p+ r% `; ~4 i, n* D# i  testing.x.sh——删除了/home/vbird/testing/# R( S* {; Z0 `: @# q
  echo ${vbird#/*/}" H1 u8 F8 J* |, E
  vbird/testing/testing.x.sh——只删除了/home/而已
# c- y7 m* s( {: i: g. Q  ------在这两个例子中,变量名后面如果接了两个##,表示在##后面的字符串取“最长的”那一段;如果只有一个#,表示取“最小的”那一段。(自注:“最小的那一段“表示从左到右离第一个字符最近并且和第一个字符相同的字符之间的内容,最长则反之)
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-27 06:51 , Processed in 0.213038 second(s), 21 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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