Script Básico en Bash (Shell) Ayuda!

Iniciado por DejarDeSerLammerYa!, 23 Mayo 2012, 23:13 PM

0 Miembros y 1 Visitante están viendo este tema.

DejarDeSerLammerYa!

Hola a todos, ya hacía que no preguntaba nada hehe...
Al grano, el caso es que necesito crear un script en bash (para OpenSuse) que, al ejecutarlo tengas que escribir un parámetro, el cual será un directorio, y luego muestre todos los elementos que contenga ese directorio y al lado de cada elemento indique si es un archivo o es un directorio. No sé si me he explicado bien... por ejemplo:

sh script home
documentos Es un directorio
config Es un fichero
etc Es un directorio

De momento he hecho algo, pero no he podido probarlo aún, el caso es que tengo que tenerlo para cuanto antes, pues mi nota media depende de este ejercicio de clase... y al menos si me pudieseis corregir si hay algún fallo en esto que hice os lo agradecería muchísimo!
Mi script:



#!/bin/bash
if  [ $1 -ne 1 ]
then
echo No introduciste un directorio
else
for Contenido in `ls $1`
do
if [ -d Contenido ]
then
echo `Contenido` es un directorio
else
echo `Contenido` es un ficheiro
fi
done
fi







Como ya he dicho, no lo he podido probar, puesto que en casa no tengo el OpenSuse instalado, mañana si lo probaré, y sé que va a fallar, seguramente vamos... así que ya lo posteo a ver si me pueden ayudar a detectar fallos.

Muchas gracias! De veras.


Runex

#2
Con éste código a mi me funciona perfectamente:


Código (bash) [Seleccionar]
#!/bin/bash
for Contenido in `ls $1`
do
if [ -d $Contenido ]
then
echo $Contenido es un directorio

else
echo $Contenido es un fichero

fi
done


echo "Script Finalizado By Rune :)"
sleep 50


Si no le pasas ningún parámetro te lista los archivos del directorio en el cual se encuentra el archivo, de lo contrario mostrará los del directorio que le indiques :).

El único "fallo" que veo en tu código es que llamas a la variable Contenido usando ` cuando se requiere $.

Un saludo :)
"No renunciaría al bambú.
Nunca renuciaría a ti.
No te compares con otros" "El me dijo:
El bambú tenía un propósito diferente al del
helecho, sin embargo eran necesarios y
hacían del bosque un lugar hermoso".

DejarDeSerLammerYa!

  :o Muchísimas gracias!!!!  :)  :)  :)  ;-)