Re: ls y break
El 19/05/12, "Matías A. Bellone" <matiasbellone@gmail.com> escribió:
> On 05/19/2012 01:06 PM, Alfonso Egea Callejas wrote:
>> Hola a todos.
>>
>> Me interesaría que en un script se utilizase el "primer" elemento de
>> una carpeta únicamente para llevar a cabo una acción. Es decir si:
>>
>> $ ls carpeta
>> aa bb cc
>>
>> busco una orden que devuelva aa.
>>
>> Buscando con ls --help, man ls y google lo más parecido que he
>> encontrado es romper un ciclo for con break:
>>
>> for i in `ls carpeta`; do
>> echo $i
>> break
>> done
>>
>> pero me parece raro que no haya una opción de ls para listar
>> únicamente el primer elemento... sabéis si la hay?
>>
>
> no que yo sepa, pero podés encadenar comandos y para sacar los elementos
> del tope de una lista, tenés head:
>
> $ ls carpeta | head -n1
> aa
Sí, acabo de encontrarlo también. Usando pipes entre ls y head o tail
puedes obtener "todas" las combinaciones posibles. Ejemplo:
$ ls carpeta | head -2 #muestra los dos primeros
aa
bb
$ ls carpeta | tail -1 #muestra el último
cc
$ ls carpeta | head -2 | tail -1 #muestra el segundo
bb
Lástima no poder acceder a la "posición" deseada directamente con ls
para que quedase más limpio :( pero bueno, todo tiene solución :D
Saludos y muchas gracias Toote!
Alfonso
Reply to:
- References:
- ls y break
- From: Alfonso Egea Callejas <a.egeacallejas@gmail.com>
- Re: ls y break
- From: "Matías A. Bellone" <matiasbellone@gmail.com>