Si nos fijamos en lo que find
dice sobre la clasificación:
-s Causa encontrar para atravesar las jerarquías de archivos en
orden lexicográfico, es decir, orden alfabético dentro de cada directorio.
Nota: `find -s` y` find | sort` puede dar resultados diferentes.
Esto significa que necesitamos canalizarlo para sort
poder manipularlo un poco más.
Como ya ha visto, una ordenación alfanumérica simple no funcionará porque compara todo como un carácter ANSI, no como números. Lo que debemos hacer es comparar los números. Podemos hacer esto con la -k
opción desort
find . -type d | sort -k2.3
Lo que sort -k2.3
está haciendo el comando es ordenar en el segundo campo (delimitado por el espacio) que termina en la tercera posición. Este es el resultado usando la convención de nomenclatura de carpetas 1 :
.
./Folder 1
./Folder 2
./Folder 3
./Folder 4
./Folder 5
./Folder 6
./Folder 7
./Folder 8
./Folder 9
./Folder 10
./Folder 11
./Folder 12
./Folder 13
./Folder 14
./Folder 15
1 Para crear esta estructura de carpetas, utilicé el comando en mi carpeta de inicio:
mkdir test; cd test; for n in {1..15}; do mkdir "Folder $n"; done
find
lugar dels
?