//对变量截取
${variable} 对变量值的修正(增删数据),仅仅修改输出后的结果对源值,并不做修改 #变数后对接字符
# ## //截取从前面开始
% %% //截取从后面开始
/ // //替换 [root@dzswj-test ~]# vbird="/home/vbird/testing/testing.x.sh"
[root@dzswj-test ~]#
[root@dzswj-test ~]#echo $vbird
/home/vbird/testing/testing.x.sh #{variable#} //#从前面开始截取
#{variable##}变数名称后面两个##表示在 ##后面的字串取最长那一段;仅有一个# 表示取最小的那一段 [root@dzswj-test ~]#echo ${vbird##/*/} //删除/*/中间的所有数据包括// ##全部删除
testing.x.sh
[root@dzswj-test ~]#echo ${vbird#/*/} //仅仅删除第一次匹配的 #删除第一次匹配的
vbird/testing/testing.x.sh #{variable%} //%从后面开始截取
#{variable%%}变数名称后面两个%%表示在 %%前面的字串取最长那一段;仅有一个# 表示取最小的那一段 [root@dzswj-test ~]#echo $vbird
/home/vbird/testing/testing.x.sh [root@dzswj-test ~]#echo ${vbird%%/*} //从后面开始 * -->/ 最大匹配删除,因此给删完了 [root@dzswj-test ~]#echo ${vbird%/*} //最短删除 /testing.x.sh
/home/vbird/testing [root@dzswj-test ~]#echo ${vbird%/*/} //最后一个字符开始/而真实的是h
/home/vbird/testing/testing.x.sh [root@dzswj-test ~]#echo ${vbird%/*h} //最短删除后端h开头
/home/vbird/testing
[root@dzswj-test ~]#
[root@dzswj-test ~]#
[root@dzswj-test ~]#echo ${vbird%%/*h} //全量删除,结尾--开头 [root@dzswj-test ~]#
[root@dzswj-test ~]#echo ${vbird%%/*/} //为匹配到,因此未能删除
/home/vbird/testing/testing.x.sh #变量截取替换字符
// /
[root@dzswj-test ~]#echo ${vbird}
/home/vbird/testing/testing.x.sh
[root@dzswj-test ~]#
[root@dzswj-test ~]#
[root@dzswj-test ~]#echo ${vbird/testing/TEST} // /最前面匹配的替换
/home/vbird/TEST/testing.x.sh
[root@dzswj-test ~]#
[root@dzswj-test ~]#echo ${vbird//testing/TEST} // //全局匹配替换
/home/vbird/TEST/TEST.x.sh

Linux对变量的截取替换的更多相关文章

  1. linux shell变量的截取

    变量的截断,经常用到的是${},##和%%几个特殊符号.假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt ,可以用${ }分别替换得到不同的值: ${file ...

  2. 【转】Linux下变量内容删除与替换

    转自:http://www.linuxidc.com/Linux/2015-01/111781.htm 当一个变量被赋予值后,有时会对变量的值进行一些微小的调整,比如删除变量值中特定一部份,或替换掉一 ...

  3. [转]Python 字符串操作实现代码(截取/替换/查找/分割)

    原文地址:http://www.jb51.net/article/38102.htm ps:好久没更新python代码了,这次用到了字符串,转来看看 Python 截取字符串使用 变量[头下标:尾下标 ...

  4. Linux系统环境变量的四个配置文件的关系

    Linux系统环境变量配置有四个文件分别是: /etc/environment,/etc/profile,/etc/bash.bashrc,~/.bashrc 各配置文件意义 /etc/environ ...

  5. shell变量的截取总结

    #shell变量的截取 Shell中的${}.##和%% 假设定义了一个变量为: 代码如下: file=/dir1/dir2/dir3/my.file.txt //变量的删除 可以用${ }分别替换得 ...

  6. Linux Min装机--配置JDK替换OpenJDK

    @Linux Min装机--配置JDK替换OpenJDK   1.将下载的JDK压缩包解压到/usr/lib/jvm wil use : 一.文件复制命令cp     命令格式:cp [-adfilp ...

  7. Python 字符串操作(截取/替换/查找/分割)

    Python 截取字符串使用 变量[头下标:尾下标],就可以截取相应的字符串,其中下标是从0开始算起,可以是正数或负数,下标可以为空表示取到头或尾. # 例1:字符串截取 str = '1234567 ...

  8. linux bash变量作用域

    linux bash变量作用域 一,思考一个问题,当在shell里执行某个程序时,shell是怎么找到这个程序的? shell会去$PATH环境变量定义的目录里去找这个命令.环境变量里一般包括/usr ...

  9. Linux 环境变量 设置 etc profile

    一.Linux的变量种类 按变量的生存周期来划分,Linux变量可分为两类: 1.永久的:需要修改配置文件,变量永久生效. 2.临时的:使用export命令声明即可,变量在关闭shell时失效. 二. ...

随机推荐

  1. abd shell的相关命令

    http://adbshell.com/commands/adb-shell-pwd adb shell pwd adb shell rm -rf /sdcard/DCIM/

  2. mysql中字符串的隐藏字符处理

    三步解决mysql字符串的隐藏字符: 1. 隐藏字符导致字符串长度边长,用mysql 自带的 Hex函数让隐藏字符显示真身, 2. 可以拿到隐藏字符的16进制码,然后用windows自带的计算器转化成 ...

  3. CardUtil算出当前身份证持有者的性别和年龄

    import java.text.SimpleDateFormat; import java.util.Date; import java.util.HashMap; import java.util ...

  4. linux 结束某个进程,并且结束子进程

    pid=49184 childid=`ps -ef|grep $pid|grep -v grep|awk '{printf " %s",$2 }'` kill -9 $childi ...

  5. EF的 NoTracking 的一些记录

    NoTracking官方解释 跟踪与非跟踪查询 跟踪行为可控制 Entity Framework Core 是否将有关实体实例的信息保留在其更改跟踪器中. 如果已跟踪某个实体,则该实体中检测到的任何更 ...

  6. git对某个文件取消跟踪

    git rm --cached readme1.txt    删除readme1.txt的跟踪,并保留在本地. git rm --f readme1.txt    删除readme1.txt的跟踪,并 ...

  7. Django框架之第五篇(模板层) --变量、过滤器、标签、自定义标签、过滤器,模板的继承、模板的注入、静态文件

    模板层 模板层就是html页面,Django系统中的(template) 一.视图层给模板传值的两种方法 方式一:通过键值对的形式传参,指名道姓的传参 n = 'xxx'f = 'yyy'return ...

  8. 【数据结构】12.java源码关于ConcurrentHashMap

    目录 1.ConcurrentMap的内部结构 2.ConcurrentMap构造函数 3.元素新增策略4.元素删除5.元素修改和查找6.特殊操作7.扩容8.总结 1.ConcurrentMap内部结 ...

  9. NAIPC 2018

    E. Prefix Free Code 大意: 给定$n$个串, 保证任意一个串都不是另一个串的前缀, 从中选出$k$个串可以拼成$\binom{n}{k}k!$种串. 给定其中一个串, 求这个串的排 ...

  10. golang --Converting and Checking Types

    package main import ( "fmt" "strconv" ) func main() { strVar := "100" ...