sh变量特性(1)

变量设置方式 说   明 示例 ${变量#关键字} 若变量内容从头开始的数据符合“关键字”,则将符合的最短数据删除
A=abc123abc1234aa123bb123cc

echo ${A#*abc}

结果:abc123abc1234aa123bb123cc ${变量##关键字} 若变量内容从头开始的数据符合“关键字”,则将符合的最长数据删除

A=abc123abc1234aa123bb123cc

echo ${A##*abc}

结果:abc123abc1234aa123bb123cc ${变量%关键字} 若变量内容从尾向前的数据符合“关键字”,则将符合的最短数据删除

A=abc123abc1234aa123bb123cc

echo ${A%123*}

结果:abc123abc1234aa123bb123cc ${变量%%关键字} 若变量内容从尾向前的数据符合“关键字”,则将符合的最长数据删除

A=abc123abc1234aa123bb123cc

echo ${A%%123*}

结果:abc123abc1234aa123bb123cc ${变量/旧字符串/新字符串} 若变量内容符合“旧字符串”,则第一个旧字符串会被新字符串替换

A=abc123abc1234aa123bb123cc

echo ${A/abc/ABC}

结果:ABC123abc1234aa123bb123cc ${变量//旧字符串/新字符串} 若变量内容符合“旧字符串”,则全部的旧字符串会被新字符串替换

A=abc123abc1234aa123bb123cc

echo ${A//abc/ABC}

结果:ABC123ABC1234aa123bb123cc

原文地址:http://blog.51cto.com/lythjq/2073386

时间: 2024-11-10 01:00:09

sh变量特性(1)的相关文章

sh变量特性(3)默认特性

变量 说明 $0 当前脚本的文件名 $n 传递给脚本或函数的参数,n是数字,第n个参数 $# 传递给脚本或函数的参数个数 $* 传递给脚本或函数的所有参数 [email protected] 传递给脚本或函数的所有参数.被""包含时,与$*稍有不同 $? 上个命令的退出状态,或函数返回值 $$ 当前shell的进程ID 示例: #!/bin/bash echo "File Name: $0" echo "First Parameter : $1"

sh变量特性(2)

变量设置方式 说明 示例 ${#变量} 变量的长度 A='Hello world!' echo ${#A} 结果:12 ${变量:-word} 如果变量为空或未定义,则变量展开为"word":否则,展开为变量的值 A='Hello world!' echo ${A:-OK} 结果:Hello wold! unset A或 A='' echo ${A:-OK} 结果:OK ${变量:+word} 如果变量为空或未定义,则不做任何操作:否则,展开为"word"值 A='

Oracle 数据库的绑定变量特性及应用

Oracle 数据库的绑定变量特性及应用[-----]转载自https://www.cnblogs.com/rootq/(原地址) 关键词: 绑定变量(binding variable),共享池(shared buffer pool), SGA(system global area); 在开发一个数据库系统前,有谁对Oracle 系统了解很多,尤其是它的特性,好象很少吧;对初学者来讲,这更是不可能的事情;仅仅简单掌握了SQL的写法,就开始了数据库的开发,其结果只能是开发一个没有效率,也没有可扩展

linux信号解释(5)--bash下的理解

上一节中用了C语言来理解信号的处理,那么在bash中是如何理解的呢? 首先我们来认识一下trap命令#type trapo_o原来是一个shell的内建命令,大家能想想为何是内建命令吗?sh是人机对话的接口,我们发起的命令都会通过sh与内核进行打交道,那么在当前sh进程内就能及时完成信号的捕捉和处理. 好了我们回到bash中如何理解呢?我们还是用回上一节的实例来做,创建一个signalshell.sh文件,文件内容如下: #!/bin/bash # echo "Process ID is $$&

bash变量详解

shell作为用户和Unix/Linux沟通的桥梁,既可以是一个可执行的二进制程序,同时也是一个具备了编程能力的程序设计语言,定义了各种各样的变量和参数,下面介绍一下shell之上的各种变量. 1.本地变量 特性:只对当前shell生效 [[email protected] ~/bin]#cat localvar1.sh  #!/bin/bash # var1=hei echo "localvar1:$var1" localvar2.sh [[email protected] ~/bi

【Linux】完全解读Linux环境变量

一.概述 环境变量:bash shell用一个称作"环境变量(environment variables)"的特性来存储有关shell会话和工作环境的信息,它允许你在内存中存储数据,以便运行在shell上的程序和脚本访问,这些数据可以用来识别用户.账户.系统.shell特性以及任何其他你需要存储的数据. shell中的环境变量有全局环境变量和局部环境变量,通过KV(variable=value)的形式声明一个局部变量,export这个局部变量,则升级成为全局环境变量.既然shell分开

JavaScript 变量、函数与原型链

定义 || 赋值 1-函数的定义 函数定义的两种方式: “定义式”函数:function fn(){ alert("哟,哟!"); } “赋值式”函数:var fn = function(){ alert("切可闹!"); } @页面加载时,浏览器会对JavaScript代码进行扫描,并将 定义式函数进行预处理(类似C等的编译).[函数声明提升] 处理完再由上至下执行,遇到赋值式函数 则只是将函数赋值给一个变量,不进行预处理,待调用时才进行处理. @在定义前面调用函

block 解析 - 成员变量

成员变量 在 上一篇 中我们讲了截获变量特性,对于局部变量,变量不加__block修饰符,在block内部是无法修改变量的值,而且初始化block之后,对变量修改,就无法同步到block内部,但是对于成员变量,结果却不一样,即时不加__block修饰符,block初始化后,对于block内部引用的变量的修改,也能同步到block内部,并且在block内部可以修改成员变量的值. Demo: 声明两个变量:_person2._p1 @interface KDBlockTest() { NSStrin

详解less中的变量

变量是less入门基础知识,他适用于定义主题,我们可以将背景颜色.字体颜色.边框属性等常规样式进行统一定义,这样不同的主题只需要定义不同的变量文件就可以了.当然该特性也同样适用于 CSS RESET(重置样式表),在 Web 开发中,我们往往需要屏蔽浏览器默认的样式行为而需要重新定义样式表来覆盖浏览器的默认行为,这里可以使用 LESS 的变量特性,这样就可以在不同的项目间重用样式表,我们仅需要在不同的项目样式表中,根据需求重新给变量赋值即可. @border-color : #b5bcc7; .