Búsqueda de archivos que contengan carácteres concretos por el terminal (Solucionado)

Imagen de Ralphie
0 puntos

Buenas.

Estoy intentando familiarizarme con los comandos básicos por el terminal y necesito saber como encontrar unos archivos que contengan unos carácteres determinados.

He buscado por el foro pero aunque haya encontrado algún tema no he sido capaz de hacerlo. También me he leído el manual de grep, ls, find, locate, cat y yo que sé que más y no atino con los parámetros. Unas veces parece que no haga nada y otras me da error en los parámetros.

El caso es que no quiero hacerlo por Nautilus aunque sea más sencillo, porque el día que no pueda utilizar el gestor estaré perdido del todo.

 

Voy a intentar explicar lo más detalladamente posible mi caso:

- Supongamos que tengo varios archivos en /media/sdb1/Carpeta.

- Sus nombres son xxyyzza.abc; xxyyzzb.bcd; xxyyzzc.cde y xxyyzzd.def

Que parámetros necesito especificarle a find (creo que es ese el comando) para que me de una lista por pantalla de los archivos que contienen el carácter "c" en su nombre (sea en la extensión o en el nombre del archivo).

He intentado utilizar find con el parámetro -name, pero después de darle al [Intro] el prompt salta a la siguiente línea como si no hubiera hecho nada.

Gracias.

Imagen de zetabe
+1
0
-1

Prueba

ls %c% , no estoy seguro que esto funcione, pero deberia tirarte una lista de todos los ficheros que tengan una "c" en su nombre.

salu2

+1
0
-1
Imagen de Ralphie
+1
0
-1

Gracias por tu ayuda zetabe. Funciona, pero me he dado cuenta de que me explicado mal.

Necesito que busque y me dé una palabra concreta y no sólo una letra ni los archivos que contenga una o varias de las letras.

La búsqueda que quiero hacer tiene que ser con una sola palabra y que sea excluyente, es decir, que sólo salgan los que tengan esa palabra entera y no cualquier letra de la misma.

Por si acaso voy a re-leerme el man ls para ver si lo saco. 

+1
0
-1
Imagen de joseluis
+1
0
-1

En teoría con find . -name '*c*' te debería buscar todos los ficheros que tienen una c en el nombre y se encuentran en el directorio desde el que lanzas el find o en alguno de sus subdirectorios. De igual manera find . -name '*.png' te localizaría los ficheros cuyo nombre termina en .png...

Buscando buscar archivos con find salen bastantes resultados que te aportan más información sobre find (por ejemplo esta página puede ser de bastante utilidad).


  • La guia Ubuntu - solución a muchos problemas
  • Google y el buscador de ubuntu-es son tus amigos

Fdo. El forense asesino alias Censor fundamentalista.

+1
0
-1

Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado

Imagen de Ralphie
+1
0
-1

Ya tengo resuelto el tema. Muchísimas gracias. El problemas radicaba en que no encerraba el criterio de búsqueda entre apostrófes (') y que el nombre empezaba con una mayúscula y lo estaba escribiendo en minúscula.

 Gracias a ambos por vuestro tiempo.

+1
0
-1
Imagen de joseluis
+1
0
-1

Si necesitaras hacer la búsqueda sin que te importen las mayúsculas lo puedes poner también en el criterio de búsqueda, por ejemplo si quieres sacar los ficheros que contienen en el nombre una c (o una C) puedes hacerlo con find . -name '*[cC]*', igualmente si quieres buscar los png sin preocuparte si los han guardado con la extensión en mayúsculas o minúsculas lo podrías hacer con find . -name '*.[pP][nN][gG]'.

Por cierto ya que has resuelto el problema edita el título del hilo para añadirle (solucionado)


  • La guia Ubuntu - solución a muchos problemas
  • Google y el buscador de ubuntu-es son tus amigos

Fdo. El forense asesino alias Censor fundamentalista.

+1
0
-1

Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado

Imagen de joseluis
+1
0
-1

Movido desde Ayuda para principiantes.
La duda parece más apropiada para La línea de comandos


Equipo de moderadores del foro
+1
0
-1

Fdo. Forense asesino, Censor fundamentalista, Fustigador de novatos y Patético maleducado