6)四种模式匹配替换结构:${var%},${var%%},${var#},${var##}
第一种模式:${%},这种模式时,shell在中查找,看它是否一给的模式结尾,如果是,就从命令行把中的内容去掉右边最短的匹配模式
第二种模式:${%%},这种模式时,shell在中查找,看它是否一给的模式结尾,如果是,就从命令行把中的内容去掉右边最长的匹配模式
第三种模式:${#}这种模式时,shell在中查找,看它是否一给的模式开始,如果是,就从命令行把中的内容去掉左边最短的匹配模式
第四种模式:${##}这种模式时,shell在中查找,看它是否一给的模式结尾,如果是,就从命令行把中的内容去掉右边最长的匹配模式
这四种模式中都不会改变的值,其中,只有在中使用了*匹配符号时,%和%%,#和##才有区别 。结构中的支持通配符,*表示零个或多个任意字符,?表示零个或一个任意字符,[...]表示匹配中括号里面的字符,[!...]表示不匹配中括号里面的字符
[root@]# var=
[root@]# echo $var
[root@]# echo ${var%s*e}
[root@]# echo $var
[root@]# echo ${var%%s*e}
te
[root@]# echo $var
[root@]# echo ${var#?e}
[root@]# echo $var
[root@]# echo ${var#*e}
[root@]# echo $var
[root@]# echo ${var##*e}
[root@]# echo $var
[root@]# echo ${var##*s}
[root@]# echo $var
[root@]# echo ${var#test}
case
[root@]# echo $var
[root@]# echo ${var#tests}
文章插图
- 宝塔后渗透-添加用户_反弹shell
- 编写PowerShell脚本执行自动登录
- C#使用Expand、Shell32解压Cab、XSN文件
- EmpireCMS php写入配置文件getshell,帝国CMS v7
- 6 bash ps1变量_shell基础PS1环境变量的作用和使用方法
- 【Shell 命令集合 扩展命令】Linux chgrp命令使用教程
- CTFHub ShellShock解题记录
- PowerShell执行python报错——未设置python路径
- 1.5 编写自定位ShellCode弹窗
- shellScript学习02--判断指令test和[]