miércoles, 15 de enero de 2020

Buscar texto en archivos desde cmd

Recientemente me encuentro con la siguiente tarea. buscar la palabra "x-palabra" todos los archivos con extensión "x-extensión" por lo que me di a la tarea de navegar en linea para saber si ya existe un método que pueda ayudarme a hacer dicha tarea.

Lo primer que se me ocurrio fue hacer algo en java ya que es el lenguaje que mejor se manejar, sin embargo para correrlo y hacer que dicho programa funcione son varios pasos a seguir, programas extras que abrir, en fin, actualmente me encuentro trabajando con windows y se me ocurrio hacer dicha busqueda en un archivo con extencion .bat ya que para ejecutar este tipo de archivos solo se necesita habrir una consola o bien seleccionar el archivo dandole doble click. 

En fin, esto fue por lo que pase para cumplir con mi objetivo.

Buscar como esta estructurado un archivo .bat,
buscar como se ejecutan sus funciones.
como recorrer un directorio
como buscar un texto dentro de un directorio
como pasar una variable dentro de una funcion en un batch 
como guardar la información en un txt-File

Una vez concluido la busqueda y tras haber hecho varios ejemplos llegue a cumplir mi objetivo, dejando el archivo.bat de la siguiente manera.

::create by inovania.blogspot.com
@echo off
cls
:inicio
call :existeArchivo "salida.txt"
set/p b = directorio:
set frace="palabraABuscar"
echo %b%
echo *************************************
for /r %b% %%a in (*.extension*) do (
    find %frace% %%a >> salida.txt
)
echo finalizando
echo *************************************
goto fin
:existeArchivo
echo archivos donde se esta buscando la palabra %frace% > %~1
:fin

explicando


Comienza limpiando el contenido de lapantalla.
cls

:inicio
call :existeArchivo "nombre.extension"
nos permite invocar la funcion existeArchivo pasandole como parametro el nombre del archivo con la extencion correspondiente.


set/p b=directorio:
esta linea nos permite agregarle el directorio donde queremos que busque

set frace="frace a buscar"
se guarda en una variable la frace que se quiere buscar dentro de cada archivo

for  /r   %b%   %%a   in   (*.extension*) do find  %frace% %%a  >> salida.txt
esta linea nos permite buscar a partir del directorio guardado en la variable %b% todos los archivos con la extension seleccionada la la palabra almacenada en la variable %frace% guardando el resultado del comando find en el archivo salida.txt

goto fin
se mueve a la funcion fin la cual finaliza el proceso y libera la consola para otra ejecucion por parte del usuaurio.


:existeArchivo
echo archivos donde se esta buscando la palabra %frace% > %~1

construye el archivo que se recibe como parametro %~1 en la funcion guardandolo con la primera linea que se esta poniendo en echo

dejando una respuesta en el archivo de la siguiente manera


De esta manera nos devuelve como resultado todos los archivos donde busco el texto y en el archivo que exista una o mas coincidencia aparecera como se muestra en la imagen...


espero les aya servido de algo,
si te agrado deja tu comentario,
si tienes cuenta de google unete de esta manera seras de los primeros en tener mis entradas.


sin mas por el momento. hasta pronto.

lunes, 13 de enero de 2020

Como hacer una Intranet usando el Celular como Modem

Asi como lo leen, ni mas ni menos que en esta entrada les mostrare como hacer una red local de manera muy sencilla usando un celular como modem,


Lo que necesitamos es lo siguiente, un par de smartphone, una computadora (puede ser de escritorio, de preferencia una laptop ) y listo.


Pasos a seguir. toma tu smartphone el mejor que tengas y dale compartir internet, para ello te vas a la opcion -->configuracion y redes-->zona wi-fi y conexiones, activas la opcion-->zona wi-fi portatil.

Nota. si solo quieres hacer una red local desactivar los datos moviles.


Esta opcion te dara un nombre de red y una contraseña la cual tendras que asignar a los dispositivos que quieres conectar a tu red, y listo.


Demasiado sencillo cierto.


Tips. si quieres agregar una computadora de escritorio, es necesario conectar el celular que estas usando como modem a dicha computadora. y al momento de conectarlo mediante tu cable usb. seleccionas la opcion compartir internet por cable usb. De esta manera estaras agregando a tu red interna la computadora de escritorio.

de esta manera si tienes agregado xampp, glassFish o algun otro servidor de aplicaciones web que tengas puedes levantarlo en tu maquina y todos los dispositivos que se conecten a dicha red podran verla de manera natural en su navegador.


Bueno sin mas por el momento los dejo hasta aquí en espera de sus comentarios. de antemano gracias por leerme

MouseEvent en jTable

Es tiempo de comenzar a agregarle eventos a nuestra tabla.

Continuando con el proyecto de creación de un JTabla en java, es hora de agregar un par de eventos a nuestra tabla, como es el evento de MouseListener y sus métodos, correspondientes.

Por el momento solo aremos que al seleccionar una celda esta nos devuelva todo el renglón completo.

Para ver los diversos métodos que tiene el mouse sobre nuestra tabla pueden encontrarlo en la entrada eventos del mouse.

Siguiendo, agregamos un metodo llamado eventos el cual lo invocamos desde nuestro constructor o metodo init(), dentro de este metodo le agregaremos a nuestra tabla el evento MouseListener dentro del cual nos quedara de la siguiente manera.

    private void eventos() {
        tabla.addMouseListener( new MouseListener() {
            @Override
            public void mouseClicked(MouseEvent e) {}
            @Override
            public void mousePressed(MouseEvent e) {}
            @Override
            public void mouseReleased(MouseEvent e) {}
            @Override
            public void mouseEntered(MouseEvent e) {}
            @Override
            public void mouseExited(MouseEvent e) {}

        });
    }

En el cual estaremos trabajando en el primer evento mouseClicked, indicando el renglon que se ah seleccionado con tabla.getSelectedRow() obtenemos un objeto de getDataVector().elementAt()
el cual (en mi caso ) lo convertimos en un string separado por (,) y listo, tenemos el contenido de nuestro registro para lo que se necesite.


el codigo les tendra que quedar de la siguiente manera

public void mouseClicked(MouseEvent e) {
   int row = tabla.getSelectedRow();
   Object elm = dtm.getDataVector().elementAt( row );
    String es = ( elm.toString() ).substring(1, ( elm.toString().length() -1 ));
    String[] a = es.split(",");
    for( String b: a ){
        System.out.println( b.trim() );
    }
}

Dejando el resultado de la siguiente manera




bueno amigos es todo por el momento. espero les sirva de apoyo esto si tienen alguna duda, dejen su comentario, leere todos y cada uno de ellos dando respuesta a lo que se pueda.