Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - leogtz

#1461
Comprueba que la cadena no esté vacía.

Código (bash) [Seleccionar]
if [ ! -s $file ]
    print "$file is empty"
else
    print "$file has content"
fi
#1462
Código (bash) [Seleccionar]
#!/usr/bin/bash
read -p "Archivo : " file
if [ ! -z $file ]
then
if [ -f $file ]
then
echo -e "Archivo";

if [ -x $file ]
then
echo -e "Permisos ejecutable";
fi

if [ -r $file ]
then
echo -e "Permisos lectura";
fi

if [ -w $file ]
then
echo -e "Permisos Escritura";
fi

else
echo -e "Directorio";
fi
else
echo -e "Entrada incorrecta.";
fi



leo@lein:~/Escritorio$ bash shell.sh
Archivo : /
Directorio
leo@lein:~/Escritorio$ bash shell.sh
Archivo : ./pl.pl
Archivo
Permisos ejecutable
Permisos lectura
Permisos Escritura
leo@lein:~/Escritorio$ bash shell.sh
Archivo : ~
Directorio
leo@lein:~/Escritorio$ bash shell.sh
Archivo : $HOME
Directorio
leo@lein:~/Escritorio$ bash shell.sh
Archivo : ./vocabulario.txt
Archivo
Permisos lectura
Permisos Escritura
leo@lein:~/Escritorio$


Código (bash) [Seleccionar]
#!/usr/bin/bash
read -p "Entrada : " file
[ ! -z "${file}" ] && (

[ -f "${file}" ] && (
echo -e "Archivo";

[ -x "${file}" ] && (
echo -e "Permiso ejecutable";
)

[ -r "${file}" ] && (
echo -e "Permiso lectura";
)

[ -w "${file}" ] && (
echo -e "Permiso escritura";
)
) || (
echo -e "Directorio";
)

) || (
echo -e "Entrada incorrecta.";
)
#1463
Por aquí mismo.

En un momento checo tu duda.
#1464
El error está en que los if's están dentro del primer if's, están anidados.

Sácalos de ahí y ponlos con elif.

Código (bash) [Seleccionar]
if [ -s $ENTRADA ]; then
echo "$ENTRADA es un archivo y no esta vacio"
elif [ -x $ENTRADA ]; then
echo "$ENTRADA es ejecutable"
elif [ -r $ENTRADA ]; then
echo "$ENTRADA es de lectura"
elif [ -w $ENTRADA ]; then
echo "$ENTRADA es de escritura"
elif [ -f $ENTRADA ]; then
echo "$ENTRADA es un archivo y no directorio, pero esta vacio"
elif [ -d $ENTRADA ]; then
echo "$ENTRADA es una carpeta"
else
echo "$ENTRADA no existe!"
fi
#1465
Scripting / Re: Menú de selección en Batch
5 Agosto 2010, 18:34 PM
Claro que sí usa programas externos, usa keyboard.com que no es nativo. Una cosa es crear los ejecutables y otra que sean comandos internos del intérprete.
#1466
Sino es la partitura no vale la pena siquiera descargarlo.
#1467
Igual recomiendo Qt, hay mucha documentación, multiplataforma, etc.

Excelente si estudias C++.
#1468
Tienes que comprobar que al ejecutable se le haya enviado un paramétro, sino es así, es posible que lanze un error "segmentation fault".

Ejemplo en C++:

Código (cpp) [Seleccionar]
#include <iostream>
#include <cstdlib>
int main(int argc, char **argv)
{
    if(argc != 2)
    {
        std::cerr << argv[0] << " cadena" << std::endl;
        exit(EXIT_FAILURE);
    }
    std::cout << argv[1] << std::endl;
    return EXIT_SUCCESS;
}
#1469
Scripting / Re: Duda con variables en batch
5 Agosto 2010, 06:54 AM
Si es la primera línea de un archivo de texto:

@echo off
<"file.txt" set /p "primera_linea="
set "primera_linea"
#1470
Foro Libre / Re: Explicación sobre crepusculo
4 Agosto 2010, 09:16 AM
 :)