¿Cómo puedo encontrar y contar el número de archivos que coinciden con una cadena determinada?
Pregunta
Quiero encontrar y contar todos los archivos en mi sistema que comienzan con una cadena, digamos "foo", usando solo una línea en bash.
Soy nuevo en bash, así que me gustaría evitar las secuencias de comandos si es posible. ¿Cómo puedo hacer esto usando solo comandos bash simples y tal vez canalizando en una sola línea?
Hasta ahora he estado usando find / -name foo*
.Esto devuelve la lista de archivos, pero no sé qué agregar para contar los archivos.
Solución
Puede utilizar
find / -type f -name 'foo*' | wc -l
- Utilice comillas simples para evitar que el shell expanda el asterisco.
- Utilice
-type f
para incluir solo archivos (no enlaces ni directorios). -
wc -l
significa "recuento de palabras, solo líneas".Dado quefind
listará un archivo por línea, esto devuelve el número de archivos que encontró.
Otros consejos
find / -name foo* | wc -l
debería hacerlo.Aquí hay un enlace a man wc .wc -l
cuenta el número de líneas
Puede canalizarlo a wc
find / -name foo * | wc -l
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow