Shell中单百分号%和双百分号%%的作用

使用百分号将变量的内容从变量的后面删除,并从变量的尾部删除。
不同的是,一个%号表示从尾部最近的匹配删除,两个%%从尾部最远的匹配删除。同时支持使用通配符。

比如:
先声明一个变量:

filename=aaabbccddaabbccdd

使用一个百分号截取尾部bb*

echo "${filename%bb*}"

结果:

aaabbccddaa

可以看到是截取了最后面的bbccdd。

使用两个百分号截取尾部bb*

echo "${filename%%bb*}"

结果:

aaa

可以看到是截取的最前面的匹配的到的bb。

注意: 如果不适用通配符,那么截取的字符串必须是最尾部的,不能是中间的字符。

Shell中变量的单百分号%和双百分号%%的作用相关推荐

  1. shell中变量的替换

    shell中变量的替换 Bash Shell可以进行变量的条件替换,既只有某种条件发生时才进行替换,替换 条件放在{}中. 1.${value:-word} 当变量未定义或者值为空时,返回值为word ...

  2. 在shell中变量的赋值有五种方法

    在shell中变量的赋值有五种 :使用 read 命令,直接赋值,使用命令行参数,使用命令行的输出结果,从文件读取 1. 直接赋值,格式为:变量名 = 变量值 2.Read 命令是系统内置命令,语法格 ...

  3. linux命令行ps1变量_利用Shell中变量PS1定制Linux Shell命令主提示符

    vim .bash_profile # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bas ...

  4. shell中变量的取值与赋值

    取值是很简单的,例如var=bbb,那么${var}ccc的结果就是bbbccc,在包含字符串的时候要用到三种引号,分别是单引号.双引号和反引号,现来一一讨论 一.整体引用 mv "a ~f ...

  5. python 双下划线变量_python 中变量的单下划线与双下划线的区别

    Python 用下划线作为变量前缀和后缀指定特殊变量. _xxx 不能用'from module import *' 导入 __xxx__ 系统定义名字 __xxx 类中的私有变量名 在 Python ...

  6. shell中变量的引用(两种方式:$变量名,${变量名})。

    一.基础 我们定义一个变量(等号两边不能有空格) FILEPATH=/var/home/sss FILEFILENAME=test001 在引用这个变量是我们可以直接使用$后面跟上变量的名字 比如: ...

  7. shell中变量和字符串拼接方法

    如下示例: #!/bin/bashv1="ll" echo "he${v1}o world!" 执行示例结果: hello world! 直接拼接就可以,可以不 ...

  8. linux——shell 中的变量

    变量的定义 变量,即在程序运行过程中它的值是允许改变的量 变量是用一串固定的字符来标示不固定的值的一种方法 变量是一种使用方便的占位符,用于引用计算机内存地址,该地址可以存储 Script 运行时可更 ...

  9. (2)shell编程学习 Shell中的变量(预设变量表)及变量定义与特殊变量 (脚本小子的进阶之路)

    这里尽量以较简略的篇幅讲解,如果之前有Python PHP语言基础的话,学习应该非常快.当然文章篇幅有限,只能讲一些主要的地方,一些偏的知识可能不讲. 目录 变量 局部变量 环境变量 自定义环境变量 ...

  10. linux shell中的各种括号的使用方法

    在这里我想说的是几种shell里的小括号,大括号结构和有括号的变量,命令的用法,如下: 1.${var}  2.$(cmd)  3.()和{}  4.${var:-string},${var:+str ...

最新文章

  1. python转cython_用Cython加速Python到“起飞”(推荐)
  2. Web.Config介绍
  3. 机器视觉和Tesseract
  4. c语言的输入函数有哪些
  5. 串口如何接收数据_原创分享 | S71200通过串口服务器读取MODBUS RTU设备
  6. #include,#import ,@class 有什么区别?
  7. 简明Python docstrings
  8. BiliBili后台源码45MB全部泄露,中奖概率写在注释里,密码硬编码,看懂了你就欧气满满(提供下载)!
  9. Unity3D利用代码生成脚本模板
  10. 文件创建失败 无法继续下载_单机梦幻西游手游下载-单机版梦幻西游手机下载...
  11. ExtJs6中利用TreePicker实现下拉树
  12. 通过Jquery实现文本高亮及取消高亮
  13. 30 个 Python 教程和技巧
  14. jdk1.6升级jdk1.8踩出的神坑
  15. 旋翼回收火箭系列博客1——研究生未来飞行器设计大赛火箭赛道介绍及分析
  16. LinuxC聊天程序:MyChat
  17. 将Virtualbox虚拟机转换格式并导入Hyper-V
  18. java版QQ 欢迎点评
  19. java 管理 程序设计_用java编程设置管理的用户登录
  20. ZJNU-2094-D-鬼来了

热门文章

  1. 天才小毒妃 第922章 把金针还给我
  2. mysql max over_max() over()
  3. <Python启发式自动化>之钉钉推送
  4. PHP内裤,用sqlmap来扒下她的内裤吧~
  5. 计算机xp的解释,xp蓝屏代码解释以及解决办法
  6. Xcelsius调用Webservice实例
  7. 20210412SQL实现全称量词和集合查询
  8. python贪吃蛇游戏代码详解外加中文_Python贪吃蛇游戏编写代码
  9. 改变用户在某表空间的配额不足
  10. Oracle官网下载历史版本软件