viernes, 3 de enero de 2025

LINUX - Comprimir Archivos (tar.gz)

El comando tar en Linux se usa a menudo para generar ficheros .tar.gz o .tgz. Este comando tiene una gran cantidad de elecciones, sin embargo solo necesita recordar algunas letras para generar instantáneamente archivos con tar. El comando tar además puede extraer los archivos resultantes.

Ademas tenemos otros tipos de compresión que podremos utilizar en Linux, a continuación los comandos mas utilizados para comprimir y descomprimir

Archivos .tar.gz:

Comprimir tar.gz: tar -czvf empaquetado.tar.gz /carpeta/

Descomprimir tar.gz: tar -xzvf archivo.tar.gz

-c: crear archivo.

-z: comprime el archivo con gzip.

-v: Muestra el progreso en el terminal mientras.

-f: Permite especificar el nombre del archivo de salida.

 

Archivos .tar:

Empaquetar: tar -cvf paquete.tar /carpeta/

Desempaquetar: tar -xvf paquete.tar


Archivos .gz:

Comprimir: gzip -9 index.php

Descomprimir: gzip -d index.php.gz


Archivos .zip:

Comprimir: zip archivo.zip carpeta

Descomprimir: unzip archivo.zip


 

jueves, 29 de diciembre de 2022

LARAGON :: Set de herramientas para desarrollar

Laragon es una aplicación de escritorio GUI que proporciona a los desarrolladores un entorno de trabajo como XAMPP, WAMP, etc. 

Leyenda: Interfaz de Laragon Full 5.0


Tiene una edición Full y Portable

Full: Apache 2.4, Nginx, MySQL 8, PHP 8, Redis, Memcached, Node.js 18, npm, git

Portable: PHP 5.4, MySQL 5.1, bitmana.

Además, es posible agregar distintas versiones de PHP / MySQL (u otras herramientas de desarrollo) fácilmente más adelante usando "Herramientas > Agregar rápido".

Entre, las ventajas que ofrece Laragon, tenemos: 

  • Compatibilidad con varias versiones de PHP.
  • Soporte terminal CMDER (es el nombre de una consola gratuita para Windows que te permitirá emular el sistema operativo Linux en él).
  • Laragon nos proporciona un sólido sistema de gestión de bases de datos con HeidiSql, opcionalmente puede cambiarlo por phpmyadmin.
  • Activación SSL
  • Elegir Apache, Nginx para su servidor web.
  • Activando Memcache, Redis.
  • Creación rápida de aplicaciones con aplicación GUI.
  • Cambio de puertos de forma muy rápida y sencilla.
  • Compartiendo su sitio local para el público con Ngrok en Laragon
  • Gestión de correo electrónico
  • Potente entorno de desarrollo universal para PHP, Node.js, Python, Java, Go, Ruby. Es rápido, liviano, fácil de usar y fácil de extender.
Para mayor información, revisar en https://laragon.org.

Espero les sea de mucha ayuda.

Saludos,

Wijoata ;-)


jueves, 30 de diciembre de 2021

Sublime Merge - Excelente herramienta para trabajar con GIT

SublimeMerge
Sublime Merge es muy, muy rápido. Además, combina el motor de UI de texto sublime con una implementación Git from-scratch. Y como cliente de Git, ofrece un conjunto completo de características. 

Entre los más importantes están la herramienta de fusión incorporada y la funcionalidad de búsqueda avanzada. Muy práctica para gestionar múltiples repositorios. 

Tiene una versión Gratuita y Comercial. La versión gratuita me basta y sobra para trabajar en proyectos de desarrollo.

Así mismo, esta disponible para Linux, Windows y Mac.

Características

  • Herramienta de fusión integrada de tres vías,
  • Diferencias de lado a lado,
  • Búsqueda de gran alcance,
  • Resaltado de sintaxis.
La documentación disponible esta en Inglés, para los que recién inician: https://www.sublimemerge.com/docs/getting_started y para mayor alcance: https://www.sublimemerge.com/docs

La pueden descargar desde: https://www.sublimemerge.com/download

¡Recomendada!

Saludos, 

viernes, 22 de noviembre de 2019

Leer archivos de gran tamaño (GB ó MB en Windows)

Unos de los problemas frecuentes cuando tenemos que trabajar con archivos de texto plano de gran tamaño (por ejemplo mayor a: 300MB, en mi caso estuve trabajando con archivos de 3GB) es el poder buscar y editar la información dentro de estos archivos. Pues necesitamos abrirlos (con algún editor de texto como Block de Notas, Sublime Text, etc.) para poder ver toda la información del archivo y trabajar con ella.

Los editores de texto normales (Block de Notas, Sublime Text, etc.) cargan toda la información del archivo en memoria, por lo que se toman su tiempo en abrirlo; es más, es posible que se queden colgados.

Una solución a este problema es utilizar editores de texto que cargan la información del archivo a demanda; uno de ellos se llama: Emedtray; tiene un versión gratuita. Y brinda soporte para Sistemas Operativos Windows: Windows 10/8.1/7/Server 2008 R2 or later. Y es muy rápido y ligero.

Icono del editor: Emedtray

Espacio de Trabajo del Editor Emedtray


Espero les sea de mucha ayuda.

Saludos,

Wijoata ;-)

lunes, 2 de abril de 2018

REST Web Service: Consulta de RUC - SUNAT

Realice la implementación del Servicio Web para consultar el Registro Único de Contribuyentes (RUC) - SUNAT. Se utilizaron tecnologías como: PHP 7, Framework Laravel 5, MySQL y Scripts para Procesos Batch en Linux.

La URL para consultar debe tener el siguiente formato: http://services.wijoata.com/consultar-ruc/api/ruc/{RUC} o https://services.wijoata.com/consultar-ruc/api/ruc/{RUC}.

Ejemplo: http://services.wijoata.com/consultar-ruc/api/ruc/20600675070 o https://services.wijoata.com/consultar-ruc/api/ruc/20600675070

Así mismo la solicitud debe de contemplar:
  • Accept: application/json
  • Content-Type: application/json
  • Method: POST
El formato de la respuesta es de tipo: JSON, con la siguiente estructura:
{
    "status": 1,
    "msg": "Operación satisfactoria.",
    "ruc": "20600675070",
    "razonSocial": "TERPRO INGENIEROS S.A.C. - TERPRO S.A.C.",
    "direccion": "URB. LOS ROBLES LA MOLINA CAL. LOS TALLANES 196 Dpto. 301",
    "ubigeo": "150114"
}

A continuación, imagen para ilustrar el funcionamiento del Servicio Web:



Espero les sea de mucha ayuda.

Última actualización: 27-01-2021

Saludos,

Wijoata ;-)

miércoles, 2 de agosto de 2017

Ejecutar Clase Java desde Consola (Linux/Windows)

Existen casos que en los que se requiere ejecutar una clase Java para realizar la manipulación de datos y obtener indicadores o generar archivos de texto plano para una migración o corrección de datos por única vez.

Bueno, una posible y rápida solución es implementar el algoritmo en una clase Java y realizar su ejecución desde Consola.

Por ejemplo; si tenemos un archivo Java: Tarea01.java y deseamos ejecutarlo desde una consola Linux; debemos hacer lo siguiente:
  1. Compilar el archivo Tarea01.java con el siguiente comando:
    javac Tarea01.java
  2. Luego ejecutarlo con el siguiente comando:
    java Tarea01

Si la clase Java requiere una librería en particular, debemos hacer lo siguiente:
  1. Compilar el archivo Tarea01.java con el siguiente comando:
    javac -cp "ojdbc14.jar:" Tarea01.java
  2. Luego ejecutarlo con el siguiente comando:
    java -cp "ojdbc14.jar:" Tarea01
En caso, la ejecución se realice en una consola Windows; se debe hacer lo siguiente:
  1. Compilar el archivo Tarea01.java con el siguiente comando (las librerías son separadas por ";"):
    javac.exe -cp "ojdbc14.jar;" Tarea01.java
  2. Luego ejecutarlo con el siguiente comando:
    java.exe -cp "ojdbc14.jar;" Tarea01
Una herramienta ligera y simple de utilizar cuando se trata de trabajar con Scripts implementados archivos Java es Gel (https://drive.google.com/open?id=0B8qXL-W9xQqabng3X1dvczZtckU)



Espero les sea de mucha ayuda.

Saludos,

Wijoata

lunes, 1 de agosto de 2016

Implementación de un Proxy Cliente desde un WSDL - SOAP - Java

Muchos desarrolladores siempre utilizan IDEs para la implementación de un Cliente Proxy para utilizar un Servicio Web; generándose las clases de la implementación en paquetes por defecto que define el WSDL del Servicio Web, los cuales se ven mal al momento de anexarlos a nuestro proyecto.

Por ejemplo: Tenemos un proyecto, en el que estamos trabajando con los siguientes paquetes:

  • latam.company.proyecto.controller
  • latam.company.proyecto.model
  • latam.company.proyecto.service
  • latam.company.proyecto.util
  • pe.com.other.company.ws.consult (Paquetes de las Clases del Servicio Web - Cliente Proxy)
  • pe.com.other.company.ws.consult.Error.V1  (Paquetes de las Clases del Servicio Web - Cliente Proxy)
  • pe.com.other.company.ws.consult.TestHeader.V1  (Paquetes de las Clases del Servicio Web - Cliente Proxy)

En este caso, el IDE generó las clases del Cliente Proxy en los paquetes: pe.com.other.company.ws.consult, los cuales son distintos al estándar que se esta manejando en nuestro proyecto.

Para mantener el estándar, recomiendo realizar lo siguiente:

  1. Utilizar el ejecutable o herramienta que viene en el SDK de java, de nombre wsimport.exe (WINDOWS) o wsimport (LINUX). La ubicación en el SDK: ..\Java\jdk1.7.0_25\bin\wsimport.exe (WINDOWS).
  2. Ejecutarlo el comando desde la consola, de la siguiente forma: 
    1. wsimport -p latam.company.proyecto.ws -keep -verbose http://192.168.2.140/TEST/Subscriptions/Consult?wsdl
    Donde:
     -p latam.company.proyecto.ws: Indica el paquete donde deseamos que se generen las clases de la implementación. El nombre del paquete debe seguir el estándar de la solución a implementar. 
     -keep: Nos permite guardar los archivos generados. (*.java, *.class).
     -verbose: Mensajes del proceso de generación.
     http://192.168.2.140/TEST/Subscriptions/Consult?wsdl: Ubicación del WSDL del Servicio Web. Este también puede ser una ubicación local, por ejemplo: "D:\TEST\Consult.wsdl" para Windows.

Luego de generar las clases, se deben agregar al proyecto, quedando de la siguiente forma:
  • latam.company.proyecto.controller
  • latam.company.proyecto.model
  • latam.company.proyecto.service
  • latam.company.proyecto.util
  • latam.company.proyecto.ws (Paquetes de las Clases del Servicio Web - Cliente Proxy)
  • latam.company.proyecto.ws.Error.V1 (Paquetes de las Clases del Servicio Web - Cliente Proxy)
  • latam.company.proyecto.ws.TestHeader.V1 (Paquetes de las Clases del Servicio Web - Cliente Proxy)
 
De esta forma se mantendría un orden en la arquitectura lógica de la solución.