频道直达:新闻 - 组网 - 安全 - 服务器 - 存储 - 系统 - 应用 - 开发 - 数据库 - 前沿 - 技术人 - 培训 - 求职 - 读书 - 教程 - 专题 - 产品 - 案例 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

Linux操作系统中 对Bash变量内容的修改

作者: sixth 出处:赛迪网 2007-11-05 17:26    砖    好    评论   进入论坛
阅读提示:文章介绍了在Linux系统中对Bash环境变量的内容进行设置修改,实现特殊功能的方法。

我们知道两种对变量取胜的方法:

echo $HOME echo ${HOME}

在echo ${variable}的方法中,还可以对变量的内容进行修改,只要加上一些字符标志,后面再接着使用比对字符串,就可以修改变量的内容了。假设变量名为:vbird,并且内容为/home/vbird/testing/testing.x.sh

◆1、完整呈现vbird这个变量:

vbird="/home/vbird/testing/testing.x.sh"

echo ${vbird}

/home/vbird/testing/testing.x.sh

◆2、在vbird变量中,从最前面开始比对

若开头为 / ,则删除两个/之间的所有数据,即 /*/

echo ${vbird##/*/}

testing.x.sh ---------删除了/home/vbird/testing/

echo ${vbird#/*/}

vbird/testing/testing.x.sh ----------只删除了/home/而已

------在这两个例子中,变量名后面如果接了两个##,表示在##后面的字符串取“最长的”那一段;如果只有一个#,表示取“最小的”那一段。(自注:“最小的那一段“表示从左到右离第一个字符最近并且和第一个字符相同的字符之间的内容,最长则反之)

◆3、承上题,如果是从后面开始,删除/*呢?

echo ${vbird%%/*/}

/home/vbird/testing/testing.x.sh ---------都没有删除

echo ${vbird%%/*}

--------都被删除了

echo ${vbird%/*}

/home/vbird/testing --------只删除 /testing.x.sh部分

在这个例子中要特别注意,那个%比对的是“最后面那个字符”的意思,所以第一个当然不对,因为vbird这个变量的内容最后面是h而不是/。至于%%/*则是删除“最长的那个/*”,当然就是全部,而%/*则是最短的那个。(自注:最短最长同上注,虽然%表示反向的比对,但需注意的是在${variable}中输入的时候仍 然按着从左到右的顺序,即与变量内容中的字符的顺序相同。如下例:

echo ${vbird%t*h}

/home/vbird/testing/tes ------t.ing.x.sh被删除了

如果是

echo ${vbird%h*t}

/home/vbird/testing/testing.x.sh ----则输出没有变化(因为比对都是与第一个字符比,变量内容的第一个字符为h,而命令中给出的第一个字符为t,与真实的变量内容不符。)

◆4. 将vbird变量中的testing取代为TEST

echo ${vbird/testing/TEST}

/home/vbird/TEST/testing.x.sh

echo ${vbird//testing/TEST}

/home/vbird/TEST/TEST.x.sh

如果变量后面接的是/ 时,表示后面是进行"取代"的工作,而且仅取代“第一个”,如果是//,则表示全部的字符串都取代。

【相关文章】

【责任编辑:刘兵 TEL:(010)68476606】

关于 Linux  Bash  变量
专题
Linux——从菜鸟到高手
Linux/Solaris服务器的安全配置
Linux 集群技术专题
Linux中文环境
Linux防火墙
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Windows XP远程桌面连接图解(.. (查看56377次)
·Solaris基础知识入门 (查看47764次)
·Windows操作系统安装 (查看34661次)
·设置远程桌面连接 (查看34190次)
·Linux的安装 (查看31196次)
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。