[linux] How can I count the number of characters in a Bash variable

How can I count all characters in a bash variable? For instance, if I had

"stackoverflow"

the result should be

"13"

This question is related to linux bash

The answer is


Using the ${#VAR} syntax will calculate the number of characters in a variable.

https://www.gnu.org/software/bash/manual/bashref.html#Shell-Parameter-Expansion


jcomeau@intrepid:~$ mystring="one two three four five"
jcomeau@intrepid:~$ echo "string length: ${#mystring}"
string length: 23

link Couting characters, words, lenght of the words and total lenght in a sentence


${#str_var}  

where str_var is your string.


Use the wc utility with the print the byte counts (-c) option:

$ SO="stackoverflow"
$ echo -n "$SO" | wc -c
    13

You'll have to use the do not output the trailing newline (-n) option for echo. Otherwise, the newline character will also be counted.


you can use wc to count the number of characters in the file wc -m filename.txt. Hope that help.