Linux/Unix Shell Scripting - recoger resultado del ls en variables

 
Vista:

recoger resultado del ls en variables

Publicado por Martuki (2 intervenciones) el 28/03/2008 16:51:21
Hola soy inexperta en esto y necesitaba un poquito de ayuda.
necesitaba saber como recoger cada resultado de un ls de un directorio en una variable diferente para poder hacer un switch case con opciones con cada fichero del directorio. Tambien necesitaba saber el directorio al cual pertenecían los ficheros antes de moverlos al directorio actual.

Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:recoger resultado del ls en variables

Publicado por Iván Garcerant (27 intervenciones) el 25/06/2008 21:24:41
En variables diferentes? Eso es poco difícil, si al menos utilizaras arreglos...

Cuando tengo que hacer algo así como lo que planteas en verdad hago algo diferente: utilizo "find" para generar la lista de archivos que me interesan y hago un pipe con un bucle while para leer línea a línea la salida del find.

Ejemplo:
Supongamos que queremos reconocer el tipo de cada archivo bajo el directorio "/home/ivan/library" para agregar un mensaje apropiado.

#!/bin/sh
find /home/ivan/library -type f | while read line
do
name=$(basename "$line")
folder=$(dirname "$line")
case "$name" in
*.mp3)
echo "$name" es un archivo de música en la carpeta "$folder"
;;
*.avi)
echo "$name" es un archivo de vídeo en la carpeta "$folder"
;;
esac
done

Espero te sirva.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar