我在 bash 脚本中有以下变量“VAR1”:
VAR1 = "/path/to/file/190909_AAA_ZZZ/"
我现在想创建一个只包含“190909”部分的变量 (VAR2)。
我想通过提取以任意 6 位数字 (190909) 开始直到下一个“_”的部分来做到这一点
如何实现?
VAR2 = ${grep ... $VAR1} ???
最佳答案
请尝试以下操作:
VAR1="/path/to/file/190909_AAA_ZZZ/"
[[ $VAR1 =~ ([0-9]{6})_ ]] && VAR2=${BASH_REMATCH[1]}
echo "$VAR2"
输出:
190909
请注意,一般变量名不建议使用大写字母。
关于bash - 提取以数字开头的变量部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57867638/