当cut命令不返回任何值时,返回零

时间:2020-01-20 21:16:26

标签: linux bash cut

我有一个场景

extract_content='60^123'

extract_count=$(echo $extract_content | cut -d^ -f1)

然后

extract_count='60' is what I achieve

现在有时

extract_content=?

然后我想要

extract_count='0'

如何使用cut命令实现这一目标

1 个答案:

答案 0 :(得分:3)

完全不使用cut

extract_content='60^123'

extract_count=0
[[ $extract_content =~ ([[:digit:]]+)\^ ]] && extract_count=${BASH_REMATCH[1]}

[[ $extract_content =~ ([[:digit:]]+)\^ ]]
extract_count=${BASH_REMATCH[1]:-0}

甚至

extract_count=${extract_content%%^*}
extract_count=${extract_count:-0}