Reputation: 51
How can I determine the number of characters in a variable?
FOO="blabla.bla.blabla.bla."
--check--
echo $FOO # 4 dot
FOO="..bla.bla.bla.blabla.bla."
--check--
echo $FOO # 7 dot
Upvotes: 1
Views: 149
Reputation: 6577
Strip the non-dots and count the length of the result.
$ x=..bla.bla.bla.blabla.bla.
$ _=${x//[^.]} count=${#_}; echo "$count"
7
$ printf -v _ %s%n "${x//[^.]}" count; echo "$count"
7
Upvotes: 0
Reputation: 195039
awk -F. '{print NF-1}' <<<$FOO
example:
kent$ FOO="blabla.bla.blabla.bla."
kent$ awk -F. '{print NF-1}' <<<$FOO
4
kent$ FOO="..bla.bla.bla.blabla.bla."
kent$ awk -F. '{print NF-1}' <<<$FOO
7
Upvotes: 0