Linux 变量操作符“${}“

目录

一、什么是"${}" :

二、具体用法:

 1、取长度:

2、截取字符串

示例一:

实例二:

 实例三:

 三、替换字符

单替换:

 示例:

全替换:

 示例: 

四:扩展利用


一、什么是"${}" :

"${}"是对变量进行处理的一个函数,它可以对变量值进行取长度,截取,替换等操作

二、具体用法:

我们用来实验的变量为环境变量$PATH

$PATH 内容如下

 1、取长度:

命令 :

echo ${#PATH}  

 我们可以看到$PATH变量的长度为 142

2、截取字符串

格式为:

${PATH:start:length}  
start:起始位置
length:截取长度,可为负数
  • 字符串首位置为0
  • start参数可不加,默认为0
  • 可在 start 参数前加 ' ~ ' 符号,意为从末尾开始计数
  • 当length为负数时代表从起始位置截取到倒数第length个字符(包含此字符)(此时倒数第一个的序号为-1)

示例一:

        命令 :

echo ${PATH:0:1} 
从第0位开始,截取一个字符

         结果: 

实例二:

        命令 :

echo ${PATH::1} 
这次没加start参数,默认从0位开始

         结果: 

 实例三:

        命令 :

echo ${PATH: ~0:1}
从倒数第0位返回1个字符

         结果: 

 三、替换字符

单替换:

${file/a/b}
将字符串中第一个a替换为b

 示例:

        命令 :

echo ${PATH/usr/root}

         结果:

 我们可以看到第一个"usr"变为了"root"

全替换:

${file//a/b}
将字符串所有的a替换为b

 示例: 

        命令 :

echo ${PATH//usr/root}

        结果:

 我们可以看到字符串中所有的"usr"变为了"root"

四:扩展利用

该函数可用于RCE漏洞中拼接指令使用,具体方法我会在下一篇文章讲到

  • 9
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Elitewa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值