El día 6 de diciembre de 2012 14:44, "Matías A. Bellone"
<[email protected]> escribió:
> On 12/06/2012 03:43 PM, Marcos Delgado wrote:
>>
>> El día 6 de diciembre de 2012 12:05, "Matías A. Bellone"
>> <[email protected]> escribió:
>>>
>>> On 12/06/2012 02:52 PM, Marcos Delgado wrote:
>>>>
>>>>
>>>> El día 6 de diciembre de 2012 11:46, "Matías A. Bellone"
>>>> <[email protected]> escribió:
>>>>>
>>>>>
>>>>> On 12/06/2012 02:41 PM, Marcos Delgado wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>> El día 6 de diciembre de 2012 11:23, "Matías A. Bellone"
>>>>>> <[email protected]> escribió:
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On 12/06/2012 02:07 PM, Marcos Delgado wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> Pues bien, necesito realizar esa labor, hasta el momento lo que más
>>>>>>>> he
>>>>>>>> podido hacer revisando opciones en internet es la siguiente orden:
>>>>>>>>
>>>>>>>> for i in *; do echo $i ; echo -e $i | tr -d '\n' | wc -c ; done
>>>>>>>>
>>>>>>>> pero no me sirve ya que aparecen en líneas separadas el número de
>>>>>>>> caracteres y el nombre del archivo.
>>>>>>>>
>>>>>>>> Se agradece cualquier ayuda.
>>>>>>>>
>>>>>>>> Gracias.
>>>>>>>> Marcos Delgado.
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>> for FILE in *; do echo `echo ${FILE} | wc -m` ${FILE}; done | sort -n
>>>>>>> |
>>>>>>> cut
>>>>>>> -d\ -f2
>>>>>>>
>>>>>>> Lo que hacés es:
>>>>>>> 1- imprimir (2) y el nombre del archivo
>>>>>>> 2- darle de comer cada nombre de archivo a "wc -m"
>>>>>>> 3- a toda la salida pasarla por sort -n
>>>>>>> 4- sólo obtener el nombre del archivo con cut
>>>>>>>
>>>>>>> Saludos,
>>>>>>> Toote
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> Muy bien! el único problema es con los archivos con espacios, estoy
>>>>>> viendo si con poner comillas se soluciona, gracias.
>>>>>>
>>>>>
>>>>>
>>>>> cambiá el 2 al final por "2-" para que te muestre todo menos el 1er
>>>>> campo.
>>>>>
>>>>
>>>> Sigue igual, gracias.
>>>>
>>>>
>>>
>>> Entonces no lo estás haciendo bien:
>>>
>>> $ ls
>>> apruebas 1.txt prueba 1.txt prueba 2.txt pruebas 1.txt
>>> $ for FILE in *; do echo `echo ${FILE} | wc -m` ${FILE}; done | sort -n |
>>> cut -d\ -f2-
>>> prueba 1.txt
>>> prueba 2.txt
>>> pruebas 1.txt
>>> apruebas 1.txt
>>> $
>>>
>>> Saludos,
>>> Toote
>>
>>
>> La cuestión es que si hay archivos cuyo nombre empieza con un número
>> los lista al final.
>>
>
> A mí no me pasa eso:
>
> $ ls
> 1 ast.txt apruebas 1.txt prueba 2.txt
> 2 asdsddst.txt prueba 1.txt pruebas 1.txt
>
> $ for FILE in *; do echo `echo ${FILE} | wc -m` ${FILE}; done | sort -n |
> cut -d\ -f2-
> 1 ast.txt
>
> prueba 1.txt
> prueba 2.txt
> pruebas 1.txt
> 2 asdsddst.txt
> apruebas 1.txt
>
> Saludos,
> Toote
>
>
> --
> To UNSUBSCRIBE, email to [email protected]
> with a subject of "unsubscribe". Trouble? Contact
> [email protected]
> Archive: http://lists.debian.org/[email protected]
>
Revisando awk con este comando el resultado sale más rápido:
ls | awk 'length($0) {print length " " $0| "sort -g"}'
Gracias.
Marcos Delgado.
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive:
http://lists.debian.org/CAB_R4cXqLhBD7EgC0YDMK0EB_U=7pvypqkfzdh6geuqsyb9...@mail.gmail.com