Quiero obtener una lista de todos los archivos en un directorio, como con ls, para que cada nombre de archivo esté en una línea separada, sin los detalles adicionales proporcionados por ls -l. Miré ls --helpy no encontré una solución. Intenté hacer
ls -l | cut --fields=9 -d" "
pero lsno usa un número fijo de espacios entre columnas. ¿Alguna idea de cómo hacer esto, preferiblemente en una línea?

ls -1. De la ayuda:Funciona en cygwin y FreeBSD, por lo que probablemente no sea demasiado específico de GNU.
fuente
solución sin tubería :-)
Tenga en cuenta que las opciones largas solo son compatibles con las coreutils de GNU donde BSD ls solo admite los argumentos cortos
-1fuente
Quizás:
fuente
ls | cat... o posiblemente,ls -1fuente
catno es inútil en este caso. Formatea la salida delsen una columna como OP lo solicita.Use el comando sed para listar columnas individuales
fuente
ls -lproduce el mismo resultado que toda su respuesta. No estoy seguro de lo quesedestá agregando aquí ...Prueba esto:
Aquí
numestá la cantidad de columnas que desea incluir.fuente
primero puedes usar esto. mostrará un archivo por línea.
ls -l | sed 's /(.*) (. *) $ / \ 2 /'
o de lo contrario puedes usar así
encontrar . -maxdepth 1 | sed 's /.///'
ambas cosas son iguales.
fuente
sed: -e expression #1, char 16: invalid reference \2 on `s' command's RHSEsto también servirá
fuente
Esto también funciona: echo -e "\ n $ (ls)"
fuente