¿Cómo puedo evitar que ls descienda a directorios, similar a podar para buscar?

12

Si escribo ls *ro*, también obtengo archivos en subdirectorios que coinciden con el *ro*patrón.
¿Hay alguna opción para ls similar a podar?

Idealmente una bandera, de lo contrario, ¿tal vez un ejecutivo?

Michael Durrant
fuente

Respuestas:

25

Usa el -dinterruptor:

ls -d *ro*

.....

hombre trabajando
fuente
Escribí un script que obtiene los bits de acceso a la carpeta (convertidos a notación 755 o 644), fecha y hora modificadas y nombre de la carpeta, luego envía la información por mensaje de texto. Necesitaba que esto fuera <140 caracteres. Esto ayudó, gracias.
user208145
4

Podrías usar:

ls | grep ro

Para cumplir la tarea. Canalice la salida de la lscual solo se emiten los contenidos del directorio actual grepy se envían selectivamente los archivos que coinciden con el patrón regex.

Darnir
fuente
-1 ¿Cómo sabría el grep si la coincidencia de patrón estaba en el directorio o en un subdirectorio?
Michael Durrant
Además, en realidad no devuelve nada. Intentalo.
Michael Durrant
1
Por defecto, ls solo muestra el contenido del directorio actual. Entonces, pasar esa salida a grep devuelve solo los datos que coinciden con la expresión regular dada. Intenté el comando dado en mi sistema Arch y funciona perfectamente.
darnir
Como grep toma una expresión regular como entrada, no agregue los asteriscos alrededor de ro. Como he mencionado, solo ejecuta grep ro. Este es un truco burdo en comparación con la respuesta de manatwork, pero funciona perfectamente bien.
darnir
Sin embargo, si tiene un número absurdo de archivos, el bloqueo en la respuesta de manatwork puede alcanzar el límite de la longitud de la línea de comando. Esto no lo hará.
Izkata