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

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. Botanical Dimensions:借助第九代智能英特尔® 酷睿™ 处理器实现独特沉浸式体验

    本文介绍位于洛杉矶的互动体验设计工作室 Master of Shapes (MOS) 打造 Botanical Dimensions 时所做出的技术努力.在这种互动式多世界体验中,参与者将穿越丛林,寻 ...

  2. caoz的梦呓:找工作么?会坐牢的那种。

    猫宁!!! 参考链接:https://mp.weixin.qq.com/s/kj9crZIIrS_8IzuYzukydw 很多年轻人,初入职场,确实背景资历不够强,眼界阅历也不够,有时候稀里糊涂就误入 ...

  3. Leetcode之动态规划(DP)专题-338. 比特位计数(Counting Bits)

    Leetcode之动态规划(DP)专题-338. 比特位计数(Counting Bits) 给定一个非负整数 num.对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数 ...

  4. VS附加到进程调试

    WIN+R 进入cmd命令  输入 netstat -ano | find "进程端口"      找端口 打开vs alt+d+p选择上图对应的进程

  5. Vue 项目结构介绍

    Vue 项目创建完成后,使用 Web Storm 打开项目,项目目录如下: build 文件夹,用来存放项目构建脚本 config 中存放项目的一些基本配置信息,最常用的就是端口转发 node_mod ...

  6. stm32 F40x CCM数据区的使用

    1. CCM需要打开总线时钟 2. CCM可以作为堆和栈使用 使用分散加载文件直接操作即可 RW_CCMRAM1 0x10000000 { .ANY (HEAP) .ANY (STACK) } 3. ...

  7. [转帖]备忘:CentOS-7 使用systemctl 管理的服务,文件打开数上限1024要改

    备忘:CentOS-7 使用systemctl 管理的服务,文件打开数上限1024要改 https://blog.csdn.net/toontong/article/details/50440272 ...

  8. ABC050D/ARC066D Xor Sum

    题目链接 题目大意 可表为 $(a \xor b, a + b)$ 的二元组有多少个? $a, b$ 满足下列约束条件: ① $a, b$ 是非负整数: ② $a + b \le N$,$N$ 是给定 ...

  9. ABC143F Distinct Numbers

    这道题非常好.其思想类似于 $O(n \log n)$ 求最长上升子序列的算法. hint:考虑固定操作次数 $o$,$k$ 最大可取到多少? int n; scan(n); vi a(n); sca ...

  10. node.js中的url.parse方法使用说明

    node.js中的url.parse方法使用说明:https://blog.csdn.net/swimming_in_it_/article/details/77439975 版权声明:本文为博主原创 ...