lsLa opción --group-directories-firsthace que los directorios aparezcan en la parte superior, lo que hace que la salida sea lsagradable y limpia:
ls -l --group-directories-first
Sin embargo, no actúa symlinks, que en realidad son symlinksdirectorios. Existe la posibilidad de usar
ls -l -L --group-directories-first
que enumerará ambos tipos de directorios en la parte superior, pero no distinguirá entre el directorio adecuado y el directorio con enlace simbólico, lo que nuevamente es confuso.
¿Puede lsmostrar directorios enlazados en la parte superior, mientras los mantiene distintos de los directorios normales?
EDITAR:
estoy usando bash.

ls. Según lastat()llamada al sistema, un enlace simbólico a un directorio sigue siendo un directorio (S_ISDIR(st_mode)devolverá verdadero). Evidentementelsdescuenta los enlaces simbólicos antes de comprobar esto.lsdoeslstat()(yreadlinkpara enlaces simbólicos) a menos que use la-Lopción (en cuyo caso usastat())S_ISLNK(st_mode)también devolvió la vía verdaderastat(), pero no lo hace, solo lo hace a través delstat(). Además, que ISLNK no devuelve verdadero a través de estadísticas, incluso si el enlace es un enlace a un enlace. Lo que significa queISLNKla fuerza nunca se devuelve verdadero a través de estadísticas, a pesar de que es una especie de no especificados ...statle brinda las propiedades del archivo al final de los enlaces simbólicos. Si eso no existe o no es accesible,statdevuelve ENOENT, por lo que lo que devuelvestatnunca será un enlace simbólico.stat()nunca le dirá nada sobre los enlaces simbólicos, al igualopenque nunca abrirá el enlace simbólico, ochmod()no cambiará los permisos de un enlace simbólico ... etc.Respuestas:
No, pero si lo usa
zsh, podría hacer:También podría definir un orden de clasificación global como:
y úsalo como:
De esa manera, puede usarlo para otros comandos que no sean
lsolscon diferentes opciones, o para diferentes patrones como:o:
Si tiene que usar
bash, el equivalente sería como:bashno tiene calificadores de globbing ni ninguna forma de afectar el orden de clasificación de los globs, ni ninguna forma de convertir nullglob en una base por glob, o no tiene un contexto local para las opciones (aparte de comenzar una subshell, por lo tanto, en()lugar de lo{}anterior) AFAIK .fuente
bash?