假设我们定义了一个变量为:

file=/dir1/dir2/dir3/my.file.txt

我们可以用${ }分别替换获得不同的值:

${file#*/}:拿掉第一条/及其左边的字串:dir1/dir2/dir3/my.file.txt

${file##*/}:拿掉最后一条/及其左边的字串:my.file.txt

${file#*.}:拿掉第一个.及其左边的字串:file.txt

${file##*.}:拿掉最后一个.及其左边的字串:txt

${file%/*}:拿掉最后条/及其右边的字串:/dir1/dir2/dir3

${file%%/*}:拿掉第一条/及其右边的字串:(空值)

${file%.*}:拿掉最后一个.及其右边的字串:/dir1/dir2/dir3/my.file

${file%%.*}:拿掉第一个.及其右边的字串:/dir1/dir2/dir3/my

注解:

#是去掉左边 (在键盘上#在${}之左边)

%是去掉右边(在键盘上%在${}之右边)

#   % %:从左边数第一条,从右边数最后一条

## % :   从右边数第一条,从左边数最后一条

随机推荐

  1. Ubuntu安装deepin wine版QQ

    1.安装deepin wine环境 https://github.com/wszqkzqk/deepin-wine-ubuntu 直接下载zip包(或者用git方式克隆) 使用unzip解压到指定文件 ...

  2. C++学习笔记-namespace

    指标识符的各种可见范围.C++标准程序库中的所有标识符都被定义于一个名为std的namespace中 关于iostream <iostream>和<iostream.h>格式不 ...

  3. lambda常用方法

    一:forEach()  循环遍历 List<Integer> costBeforeTax = Arrays.asList(100, 200, 300, 400, 500); costBe ...

  4. SpringMVC异常体系

    在服务端经常会遇到需要手动的抛出异常,比如业务系统,校验异常,比较通用的处理方案是在最顶层进行拦截异常,例如Struts的全局异常处理,而Spring的异常处理机制就相对于Struts来说好用多了   ...

  5. hello1的web.xml解析

    <?xml version="1.0" encoding="UTF-8"?> <web-app version="3.1" ...

  6. 在 sys.servers 中找不到服务器 '10.0.2.13'。请验证指定的服务器名称是否正确。

    工作中,因为需要,搭建同事的程序模块,附加了从同事那里拷过来的该程序使用的库.(C#.C/S..Net Framework4.0 .WCF.Win10.SQL Server 2014.VS2015) ...

  7. 2019中山纪念中学夏令营-Day2[JZOJ]

    博客的开始,先聊聊代码实现: 每次比赛以后,要有归纳错误的习惯. 错误小结: 1.读入:scanf(“%c”)会读入回车和空格,但cin不会. 2.对于二维数组的输入,不能把m,n搞混了,会引起严重的 ...

  8. FFmpeg4.0笔记:封装ffmpeg的音频重采样功能类CSwr

    Github https://github.com/gongluck/FFmpeg4.0-study/tree/master/Cff CSwr.h /************************* ...

  9. 解决Sublime Text3中文符号以及中文显示乱码问题

    今天安装了sublime Text3,发现中文符号显示是乱码,刚开始以为是编码问题,经过各种尝试,终于找到了解决办法.解决方法如下: 一.安装包管理器 使用Ctrl+~快捷键或者通过View-> ...

  10. Encryption (hard) CodeForces - 958C3 (树状数组)

    大意: 给定序列$a$, 要求将$a$分成$k$个非空区间, 使得区间和模$p$的和最小, 要求输出最小值. $k$和$p$比较小, 直接暴力$dp$, 时间复杂度是$O(nklogp)$, 空间是$ ...