Como convertir tus scripts en comandos en líneas de comandos / terminales de Linux y Mac

Primero creamos una carpeta bin en tu carpeta de usuario.

Para ver donde estamos utilizamos pwd y para ver donde está nuestra carpeta de usuario podemos utilizar echo $HOME

pwd
echo $HOME

y entonces entramos a nuestra carpeta de usuario (si acabas de abrir la terminal ya debes estar ahí). El comando cd sin parámetros nos lleva a la carpena del usuario, o podemos utilizar cd $HOME

cd
cd $HOME

La carpeta no tiene por que llamarse “bin”, puede llamarse lo que tu quieras. Yo nombro mis carpetas “bin” ya que los sistemas usualmente utilizan una carpeta llamada “bin” para lo ejecutable.

Como respaldar tu cuenta de DreamHost y descargar el respaldo fácilmete

Normalmente hago un respaldo de DreamHost cada mes, junto con otras cosas que respaldo, y luego descargo todos los archivos. Es parte de mi estrategia de respaldo, respaldo lo que hago cuando hay algo importante que respaldar, o el respaldo mensual normal, el cual es para mi y lo llamo valor agregado para las personas cuyos sitios hospedo.

Por supuesto que no disfruto descargar todos los archivos uno por uno, prefiero que se descarguen mientras duermo. Y no manejo una sola cuenta de DreamHost.

Pre-genera las vistas previas usando convert de imagemagick en una terminal

Anteriormente escribí algunos artículos sobre como manejar las vistas previas en PHP.

https://www.jveweb.net/archivo/2010/09/como-crear-vistas-previas-escaladas-en-php.html https://www.jveweb.net/archivo/2010/09/como-crear-vistas-previas-escaladas-y-recortadas-en-php.html

Estos artículos hablan sobre la creación de vistas previas al ser requeridas. Si un cliente la pide, la vista previa es creada, servida, y removida.

Esta es mala seguridad (otra historia de Sony)

Me desviaré un poco de las publicaciones usuales para compartir y dejar esto como un recuerdo de como no implementar seguridad.

La función que genera los captchas en Sony no genera una imágen, solo algo de texto y cambia su estilo. Estoy seguro que este script no durará mucho ahí, pero aquí esta, diviertanse:

http://pro.sony.com/bbsc/jsp/forms/generateCaptcha.jsp

"Desactivan" el ratón, pero pueden ver el código desde el menú, o presionando CTRL+U en los navegadores, o CTRL+A (seleccionar todo), CTRL+C (copiar) CTRL+V (pegar), o si tienes una terminal y curl instalado:

Manejando MySQL desde la linea de comandos

Si nuestro servicio de hospedaje nos ofrece un shell SSH y tiene MySQL instalado, o si tenemos MySQL instalado en nuestra computadora, podemos administrar una base de datos desde la interfase de linea de comandos. Si desarrollamos programas que requieres del uso de una base de datos MySQL, es muy probable que ya estemos familiarizado con las peticiones de SQL. Utilizando el comando mysql podemos enviar estas peticiones a la base de datos.

Usando rsync y cron para automatizar respaldos incrementales

La pérdida de datos en una seria preocupación para individuos y compañías que se confían en el uso de computadoras para su vida u operaciones diarias. Aquellos que tienen un sistema basado en Unix cuentan con poderosas herramientas para prevenir esto, como lo es rsync para respaldar la información y cron para hacer el proceso de respaldo automático. En publicaciones previas escribí sobre lo básico de rsync y su uso como un servicio, así como lo básico de cron. En esta publicación el enfoque está en la funcionalidad de rsync para respaldos y su uso conjunto con cron para automatizar el proceso de respaldo.

Configurar teclas no reconocidas en Linux

Ocasionalmente se me presentan teclados que contienen teclas que no son reconocidas por default en Linux. En la mayoría de los casos el arreglo consiste en seleccionar una distribución de teclado diferente, las distribuciones modernas de Linux cubren una amplia variedad de teclados, pero algunas veces no hay una distribución de teclado disponible que coincida con nuestro teclado y la funcionalidad de algunas teclas se pierde. En esta publicación escribo sobre como detectar y mapear teclas desconocidas. Estoy asumiendo que estás trabajando en un entorno gráfico y que le quieres dar alguna funcionalidad a la tecla ahí.

Usando cronjobs en Linux

cron es un servicio que nos permite agendar el lanzamiento de programa y scripts. Esto nos permite automatizar la ejecución de diversas tareas en nuestra computadora. cron es lanzado cuando encendemos nuestra computadora y se queda funcionando en el fondo.

Utilizando rsync como un servicio

Si la computadora con la que nos queremos conectar no tiene el servicio de SSH (o RSH) corriendo, podemos configurar y utilizar rsync como un servicio en esa computadora. Esto haría que rsync escuche el puerto 873 por conexiones entrantes de otras computadoras utilizando rsync. Mientras que esto no es recomendable para la transferencia de archivos a través de redes inseguras, como lo es el Internet, debido a que la transferencia de datos no es cifrada, podemos utilizar esto para mantener información sincronizada entre diferentes computadoras en redes internas, así como realizar respaldos.

Dándole un mejor uso a la tecla Bloq Mayús en Linux

¿Qué tan frecuentemente utilizamos la tecla Bloq Mayús (Caps Lock) en realidad?, Esta es una de las teclas mejor posicionadas en nuestro teclado, ya que se encuentra junto a la tecla A, sin embargo, en este espacio tenemos esta tecla Bloq Mayús que rara vez utilizamos. Para los que escriben sin ver el teclado es un espacio aún más importante, ya que solo basta un pequeño movimiento de nuestro meñique izquierdo para presionarla. Estoy seguro que hay gente que la utiliza todos los días, pero según tengo entendido es una minoría.

Como crear un túnel reverso de SSH

A veces que necesitamos conectarnos vía SSH a otra computadora, nos encontramos con que esta computadora a la que deseamos conectarnos vía SSH (llamaremos a esta computadora "destino") se encuentra utilizando NAT y por lo tanto no cuenta con una dirección de IP pública que podamos usar para conectarnos a ella, o bien se encuentra tras un muro de fuego que no permite el acceso desde fuera.

Si "Destino" puede establecer una conexión SSH a otra computadora que es accesible, podemos utilizar esta segunda computadora para establecer un tunel de SSH en reversa a nuestra computadora "Destino", llamaremos a esta segunda computadora "Origen" (aún si no es realmente la computadora que vamos a usar para manejar a "Destino" remotamente, sino solo un puente).

Crear una lectura para KTouch con una lista de palabras

Debido a que no encontré ninguna lectura que me gustara para KTouch, al menos no una que me permitiera practicar con un gran número de palabras, pensé que sería útil crear una basada en palabras al azar tomadas de una de las listas de palabras usualmente localizadas en /usr/share/dict, aunque este mismo procedimiento puede usarse con cualquier lista de palabras. No me tomó mucho tiempo hacerlo, pero aún así fue interesante.

Al final incluyo la lectura que resulta de este procedimiento, así como una lectura basada en las palabras del libro Las Aventuras de Sherlock Holmes.

Detectando y cambiando la codificación de caracteres en archivos de texto

Cuando recibes y necesitas manejar múltiples archivos de texto que usan caracteres que no existen en el idioma inglés, puedes enfrentarte al problema de lidiar con diferentes codificaciones de caracteres. Esto es particularmente notable en sitios web, donde si el navegador trata de interpretar el archivo de texto con una codificación que difiere de la codificación actual de el archivo, podemos ver símbolos extraños en donde estos caracteres especiales se supone que debían mostrarse, pero esto no está limitado a sitios web, cualquier programa que se haga para trabajar con lenguajes que no sean inglés podrían presentar un problema similar si no está apropiadamente hecho.

Definiendo servidores de SSH

Si necesitamos conectarnos seguido al mismo o los mismos servidores de SSH, en vez de escribir todo el comando de conexión cada vez que lo hacemos, ya que una cadena de conexión puede ser algo así:

ssh -p 34567 usuario@subdominio.dominio.tld

Podemos crear un archivo de configuración de SSH que nos permita definir los parámetros con los que nos conectamos al servidor, y así podemos establecer conexiones simplemente escribiendo el nombre que le asignamos al servidor.

Conexión SSH sin contraseña usando firmas digitales

Cuando nos conectamos por medio de SSH a un servidor, una manera de autenticarnos con el que no requiere que introduzcamos una contraseña es el uso de firmas digitales. Lo que hacemos en este caso es generar un par de llaves (una llave pública y una llave privada), y agregar nuestra llave pública a la lista de llaves autorizadas en el servidor al que queremos poder conectarnos.