我有一个字符串:
baseline=RAVENPLAT1.5.5.0_1.5.5.0-318_CHASSIS_PKG_193_15-AUG-2014_0350@/vobs/tlv_pvob
我试图进入子字符串变量,直到有可能出现“@”符号? 最佳答案
使用BASH正则表达式:
baseline=RAVENPLAT1.5.5.0_1.5.5.0-318_CHASSIS_PKG_193_15-AUG-2014_0350@/vobs/tlv_pvob
[[ "$baseline" =~ ^([^@]+) ]] && myvar="${BASH_REMATCH[1]}"
echo "$myvar"
RAVENPLAT1.5.5.0_1.5.5.0-318_CHASSIS_PKG_193_15-AUG-2014_0350
否则使用BASH字符串操作:
myvar="${baseline%%@*}"