You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Bash中将变量的最后一个字符转换为小写?

如何仅将Bash变量的最后一个字符转为小写?

你可以通过Bash参数扩展或者sed命令实现只转换变量最后一个字符为小写,以下是两种可行方案:

方案一:使用Bash参数扩展

利用参数提取分离变量的前半部分和最后一个字符,再单独转换最后一个字符的大小写:

MY_STRING="THE_NAME_UPPER_A"
MY_NEW_STRING="${MY_STRING%?}${MY_STRING: -1,,}"
# 验证结果
echo "$MY_NEW_STRING"  # 输出 THE_NAME_UPPER_a
  • ${MY_STRING%?}:移除变量最后一个字符,得到THE_NAME_UPPER_
  • ${MY_STRING: -1,,}:提取变量最后一个字符并转为小写,得到a
  • 两者拼接后即为目标结果

方案二:使用sed命令

通过正则匹配定位最后一个字符,再转换其大小写:

MY_STRING="THE_NAME_UPPER_A"
MY_NEW_STRING=$(echo "$MY_STRING" | sed 's/\(.*\)\(.\)/\1\L\2/')
# 验证结果
echo "$MY_NEW_STRING"  # 输出 THE_NAME_UPPER_a
  • \(.*\):匹配变量中除最后一个字符外的所有内容
  • \(.\):匹配最后一个字符
  • \1:保留前面匹配的内容,\L\2将最后一个字符转为小写

内容的提问来源于stack exchange,提问作者A.Pissicat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 19:05:54