Cómo contar la ocurrencia de un carácter específico en una cadena o archivo usando bash
- 2957
- 799
- Sr. Eduardo Menchaca
A continuación puede encontrar algunos sugerencias sobre cómo contar una ocurrencia de carácter específico en un archivo o en una cadena. Le dice que tenemos una cadena "Hola Bash":
$ String = "Hello Bash" $ Echo $ String Hello Bash
Usando shell bash ahora podemos contar una ocurrencia de cualquier carácter dado. Por ejemplo, cuentemos el número de ocurrencias de un personaje l
:
$ echo $ string | sed -e 's/\ (.\)/\ 1 \ n/g '| Grep L | WC -L 2
El sed
El comando primero separa cualquier cadena dada a múltiples líneas. Donde cada línea contiene un solo personaje:
$ echo $ string | sed -e 's/\ (.\)/\ 1 \ n/g 'h e l l o b a s h
Después de eso podemos usar grep
comandar solo para buscar caracteres específicos. En este caso imprimimos solo el carácter l
:
$ echo $ string | sed -e 's/\ (.\)/\ 1 \ n/g '| grep l l l
Lo que le queda es usar WC -L
simplemente contar las líneas:
$ echo $ string | sed -e 's/\ (.\)/\ 1 \ n/g '| Grep L | WC -L 2
La misma estrategia también se puede utilizar para contar una ocurrencia de carácter en un archivo. El siguiente comando de shell bash cuenta cuántas veces un personaje l
aparece en el archivo /etc/servicios
:
$ CAT /ETC /SERVICIOS | sed -e 's/\ (.\)/\ 1 \ n/g '| Grep L | WC -L 9298
Sin embargo, otra alternativa a la ocurrencia del carácter de contar es usar GREP's --solo coincidencia
o -O
opción para imprimir solo caracteres coincidentes:
$ GREP -O L /ETC /SERVICIOS | WC -L 9298
Tutoriales de Linux relacionados:
- Cómo Grep Correntemente para el texto en scripts bash
- Subshells de Linux avanzados con ejemplos
- Expresiones regulares de Python con ejemplos
- Bash Regex avanzado con ejemplos
- Mastering Bash Script Loops
- Bash Script: Hello World Ejemplo
- Bash regexps para principiantes con ejemplos
- Cómo encontrar una cadena o texto en un archivo en Linux
- Ejemplos de consejos y trucos de comandos de comandos útiles - Parte 1
- Encuentre todos los archivos que contienen texto específico
- « Cómo omitir la salida de números de línea de la impresión GNU R con RScript en Linux
- Introducción »