linux shell 路径截取正则表达式


最近写脚本,需要对脚本中函数传递的路径参数进行截取,发现了以下比较好用的方法,记录下:

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

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

很实用的Linux 系统运维常用命令及常识(超实用)
作为Linux运维,需要了解Linux操作系统的基本使用和管理知识,下面积木网小编给大家介绍下Linux运维需要掌握的命令,想成为Linux运维的朋友可以来学习

Linux常用命令全集(超全面)
系统信息arch显示机器的处理器架构(1)uname-m显示机器的处理器架构(2)uname-r显示正在使用的内核版本dmidecode-q显示硬件系统部件-(SMBIOS/DMI)hdparm-i/dev/hda罗列

Linux下Shell脚本中几种基本命令的替换区别
Part1:`command`这是命令标准输出作为函数标准输入操作方法之一,有很大的弊端以及不安全的地方。缺点一:比较陈旧。缺点二:容易与单引号混淆。(