tengo una pregunta un poco rara, pero que me tiene de cabeza. Resulta lo siguiente, tengo un directorio con varios archivos, que son un numero secuencial, es decir: 1.txt 2.txt 3.txt ... Si pongo el comando "ls" pues me muestra el contenido del directorio en este orden: 1.txt 2.txt 3.txt De momento todo bien, pero ¿ls ordena el contenido del directorio para mostrarlo? ocurre lo siguiente, tengo un script PHP (aunque podria ser en C, creo que da igual el lenguaje ya que el resultado seria el mismo), el script lo que hace es mostrarme el contenido del directorio, pero el orden es diferentes, es decir, yo esperaba que fuese: 1.txt 2.txt 3.txt pero no es así, es de otra forma, investigando un poco parece ser que SUSE ordena los ficheros según la antiguedad, es decir, muestra primero los más antiguos por lo que no sigue el orden del comando "LS", por lo que pienso que el comando "LS" ordena el listado para mostrarlo. ¿sabeis algo de esto? ¿esto es así?, ¿esto depende del sistema de archivos? ¿depende si es FSReaiser EXT3 EXT3, ...? ¿alguna sugerencia?
El Lunes, 31 de Enero de 2005 17:14, David escribió:
tengo una pregunta un poco rara, pero que me tiene de cabeza.
Resulta lo siguiente, tengo un directorio con varios archivos, que son un numero secuencial, es decir:
1.txt 2.txt 3.txt ...
Si pongo el comando "ls" pues me muestra el contenido del directorio en este orden:
1.txt 2.txt 3.txt
De momento todo bien, pero ¿ls ordena el contenido del directorio para mostrarlo?
ocurre lo siguiente, tengo un script PHP (aunque podria ser en C, creo que da igual el lenguaje ya que el resultado seria el mismo), el script lo que hace es mostrarme el contenido del directorio, pero el orden es diferentes, es decir, yo esperaba que fuese:
1.txt 2.txt 3.txt
pero no es así, es de otra forma, investigando un poco parece ser que SUSE ordena los ficheros según la antiguedad, es decir, muestra primero los más antiguos por lo que no sigue el orden del comando "LS", por lo que pienso que el comando "LS" ordena el listado para mostrarlo.
¿sabeis algo de esto? ¿esto es así?, ¿esto depende del sistema de archivos? ¿depende si es FSReaiser EXT3 EXT3, ...?
¿alguna sugerencia? man ls Allí pone que ls ordena el listado según la secuencia de la localización en curso. Por supuesto puedes elegir otra ordenación. Como consejo, mira un poco antes de enviar alguna pregunta, sobre todo usando man nombre_comando_o_programa info nombre_comando_o_programa En otras listas te encontrarás con mensajes de contestación bastante fuertes. Un saludo.
El 2005-01-31 a las 17:14 +0100, David escribió:
... Si pongo el comando "ls" pues me muestra el contenido del directorio en este orden: 1.txt 2.txt 3.txt De momento todo bien, pero ¿ls ordena el contenido del directorio para mostrarlo?
No se te ha ocurrido mirar el manual, ¿verdad? Es una de las pocas páginas que está traducida - aunque desafortunadamente, la española es del 98 y la inglesa del 2004 (fileutils-4.0 contra coreutils 5.2.1). La inglesa lo dice nada más empezar: DESCRIPTION List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuSUX nor --sort. O sea, que ordena alfabéticamente sino mandas lo contrario. La versión española es confusa: Cada una de las listas de ficheros (las de ficheros no directorios, y para cada directorio la lista de ficheros de dentro) se clasifica separadamente según la secuencia de clasificación en la localización en curso. Hay que fastidiarse :-/ A ver si alguno de los suseros españoles están a la escucha y consiguen que hagan un filtrado de las páginas de manual para quitar las desfasadas. Con lo bien traducidos que están los manuales de suse en papel, resulta sorprendente - aunque no sean ellos quienes traducen los man, el mantenimiento de ese paquete deja que desear. -- Saludos Carlos Robinson
participants (3)
-
Carlos E. R.
-
David
-
jpb