[Linux] shell 学习(五) 变量的操作

本文探讨了在Shell中如何使用##、%%、/、//进行变量的删除和替换操作。通过实例展示了如何删除变量开头或结尾的特定内容,以及如何替换变量中的特定字符串。此外,还介绍了对变量内容进行全面替换的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.shell 中##、%%、/、//的使用

在shell中,###///%%%用在变量后面时,表示对变量进行删除、替换操作,具体如下:

${var#keyword}:如果变量从头开始的内容符合keyword,则删除最短的符合内容
${var##keyword}:如果变量从头开始的内容符合keyword,则删除最长的符合内容
${var%keyword}:如果变量从头尾开始的内容符合keyword,则删除最短的符合内容
${var%%keyword}:如果变量从头尾开始的内容符合keyword,则删除最长的符合内容
${var/old/new}:使用new来替换变量中第一个old。
${var//old/new}:使用new来替换变量中所有的old。
示例

我们使用环境变量来进行下示例。首先查看我的PATH变量,并将其赋给自定义变量path:

jyq@ubuntu:~/shellstudy$ echo $PATH
/home/jyq/bin:/home/jyq/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
jyq@ubuntu:~/shellstudy$ path=$PATH
使用#删除变量

现在我要删除变量中的/home/jyq/bin:,则可以用#来进行操作:

jyq@ubuntu:~/shellstudy$ 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值