2015-10-13 12 views
6

Ho una serie variabile di come questo:parole Conteggio e caratteri in Bash senza wc

sentence="a very long sentence with multiple  spaces" 

ho bisogno di contare il numero di parole e caratteri ci sono senza utilizzare altri programmi come wc.

So conteggio parole può essere fatto in questo modo:

words=($sentence) 
echo ${#words[@]} 

Ma come faccio a contare i caratteri spazi inclusi?

+1

Eventuali duplicati di [come posso contare il numero di caratteri in una variabile] (http://stackoverflow.com/questions/15596199/how-can-i- contare-the-quantità-di-caratteri-in-a-variabile) – BroSlow

risposta

5

Ma come posso contare i caratteri inclusi gli spazi?

contare durata di utilizzo stringa:

echo "${#sentence}" 
47 
0

È anche possibile utilizzare grep con un'espressione regolare che corrisponde tutto:

echo "this string" | grep -oP . | grep -c . 
0

Utilizzando awk su una sola riga:

echo this string | awk '{print length}' 

Anothe R modo di tubazioni testo stdin a awk:

awk '{print length}' <<< "this string" 
Problemi correlati