shell ${} : 字符串处理 截取

方式1 ${}取字符串

记忆方法:(3个字符键盘位置 #$%,#是从左向右、%是从右向左)
一个 # % 是匹配第一个,两个 ## %% 是匹配最后一个

# 定义一个字符 file
file=/dir1/dir2/dir3/my.file.txt

# 我们可以用 ${} 分别替换获得不同的值:
${file#*/} :拿掉第一条 / 及其左边的字符串:dir1/dir2/dir3/my.file.txt
${file##*/}:拿掉最后一条 / 及其左边的字符串:my.file.txt
${file#*.} :拿掉第一个 .  及其左边的字符串:file.txt
${file##*.}:拿掉最后一个 .  及其左边的字符串:txt


${file%/*} :拿掉最后条 / 及其右边的字符串:/dir1/dir2/dir3
${file%%/*}:拿掉第一条 / 及其右边的字符串:(空值)
${file%.*} :拿掉最后一个 .  及其右边的字符串:/dir1/dir2/dir3/my.file
${file%%.*}:拿掉第一个 .  及其右边的字符串:/dir1/dir2/dir3/my

方式2 :截取

${varible:n1:n2} :从左边数截取变量varible从n1到n2之间的字符串。
${varible:0-n1:n2}:从右边数截取变量varible从n1到n2之间的字符串。

MYVAR="food|forthought.jpg"
echo ${MYVAR:0:3}   #foo
echo ${MYVAR:3}     #d|forthought.jpg
echo ${MYVAR:0-3:2}  #jp
echo ${MYVAR:0-3}    #jpg

获取文件绝对路径
$(readlink -f $f)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值