elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Problema script bash
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema script bash  (Leído 3,238 veces)
hervasiop12345

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Problema script bash
« en: 28 Mayo 2011, 17:26 pm »

Buenas. Estoy intentando hacer un script que muestre los ficheros que hay en un directorio(texto,carpetas,ficheros especiales y ejecutables). Este puede recibir o no como parámetro el directorio. El caso es que me da error en la variable a la que asigno el directorio. Os dejo el código y gracias por las molestias.
Código:
 #!/bin/bash

  if [ -z $1 ]
  then
    echo "La clasificación de ficheros del directorio $(pwd) es:"
    directorio=`pwd`
  elif [ ! -z $1 ]
  then
    echo "La clasificación de ficheros del directorio $1 es:"
    directorio=$1
  fi

  $ntext=`file $directorio/* |grep -c "text"`
  $text=`file $directorio/*| grep "text" | cut -f 1 -d ":"`
  $ndisp=`file $directorio/* |grep -c "device"`
  $disp=`file $directorio/*| grep "device" | cut -f 1 -d ":"`
  $ndire=`file $directorio/*|grep -c "directory"`
  $direc=`file $directorio/*| grep "directory" | cut -f 1 -d ":"`
  $nejec=`file $directorio/*|grep -c "executable"`
  $ejec=`file $directorio/*| grep "executable" | cut -f 1 -d ":"`
  echo "Hay $ntext fichero/s de texto: $text"
  echo "Hay $ndisp fichero/s de dispositivo: $disp"
  echo "Hay $ndire directorio/s: $direc"
  echo "Hay $nejec fichero/s ejecutables: $ejec"


En línea

leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
***
Desconectado Desconectado

Mensajes: 3.069


/^$/


Ver Perfil WWW
Re: Problema script bash
« Respuesta #1 en: 28 Mayo 2011, 20:13 pm »

Prueba esto:
Código
  1. [ ! -z "$1" ] && directorio="$1" || directorio=$PWD
  2. echo -e "Directorio : $directorio";


En línea

Código
  1. (( 1 / 0 )) &> /dev/null || {
  2. echo -e "stderrrrrrrrrrrrrrrrrrr";
  3. }
  4.  
http://leonardogtzr.wordpress.com/
leogutierrezramirez@gmail.com
hervasiop12345

Desconectado Desconectado

Mensajes: 36


Ver Perfil
Re: Problema script bash
« Respuesta #2 en: 29 Mayo 2011, 22:23 pm »

gracias , me ayudó a encontrar el error. Para asignar a las variables sobraba el "$". Dejo el código terminado.
Código:
#!/bin/bash

  if [ -z $1 ]
  then
    echo "La clasificación de ficheros del directorio $(pwd) es:"
    echo
    directorio=$(pwd)
  elif [ ! -z $1 ] && test -d "$1"
  then
    echo "La clasificación de ficheros del directorio $1 es:"
    echo
    cd $1
    directorio=$1
  else
    echo "Llamada incorrecta"
  fi

  if test -d "$directorio"
  then
    ntext=`file * |grep -c "text"`
    text=`file  * | grep "text" | cut -f 1 -d ":"` #grep -c:visualiza el número de líneas que contienen la expresión text
    ndisp=`file * |grep -c "device"`
    disp=`file  * | grep "device" | cut -f 1 -d ":"`
    ndire=`file * |grep -c "directory"`
    direc=`file * | grep "directory" | cut -f 1 -d ":"`
    nejec=`file * |grep -c "executable"`
    ejec=`file  * | grep "executable" | cut -f 1 -d ":"`
    echo "Hay $ntext fichero/s de texto:"
    echo
    echo "$text"
    echo
    echo "Hay $ndisp fichero/s de dispositivo:"
    echo
    echo "$disp"
    echo
    echo "Hay $ndire directorio/s:"
    echo
    echo "$direc"
    echo
    echo "Hay $nejec fichero/s ejecutables:"
    echo
    echo "$ejec"
  fi
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
[Bash script] equivalente de goto en batch para bash (SOLUCIONADO)
Scripting
moikano→@ 4 16,092 Último mensaje 4 Noviembre 2010, 15:58 pm
por moikano→@
Problema script bash ruta de directorio en variable
Scripting
InuKen 4 6,745 Último mensaje 14 Mayo 2011, 00:46 am
por leogtz
Problema Script. [bash]
Scripting
LDueñas 7 6,047 Último mensaje 27 Mayo 2011, 09:16 am
por LDueñas
Problema con script en bash
Scripting
bewa 0 1,421 Último mensaje 1 Febrero 2012, 21:44 pm
por bewa
Problema con script en bash « 1 2 »
Scripting
Gambinoh 10 6,461 Último mensaje 21 Diciembre 2014, 14:56 pm
por Gambinoh
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines