最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下:
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
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
您可能感兴趣的文章:- shell 正则表达式详细整理
- Shell正则表达式之grep、sed、awk实操笔记
- Shell if中的正则表达式使用详解
- Shell脚本中通过正则表达式匹配IP地址
- Shell正则表达式验证IP地址
- PowerShell中正则表达式使用例子
- Shell正则表达式学习笔记
- PowerShell中使用正则表达式匹配字符串实例
- 详解Linux--shell脚本之正则表达式
- shell高级学习之正则表达式