jueves, 31 de enero de 2019

Establecer timezone en Ubuntu 18.04


Tras instalar Ubuntu 18.04 server, una de las cosas a revisar es la fecha y hora de nuestro sistema.
Mediante el comando date podemos comprobar estos valores:
$ date
mié ene 30 21:54:35 UTC 2019
No obstante, no está ajustando correctamente el huso horario real, que en mi caso es España. Hay un retraso de una hora.

lunes, 28 de enero de 2019

Fallo al referenciar parámetros a partir de la décima posición

Como se vio en la entrada anterior, donde se explica cómo hacer uso de los parámetros que se le pasan a un script, se puede referenciar a los distintos parámetros de forma individual.
No obstante, surgirán problemas si intentamos referenciar los parámetros a partir de la posición 10.
Veamos un ejemplo:

jueves, 24 de enero de 2019

Variables bash #2

Como dijimos en un post anterior, bash tiene multitud de variables internas que podemos usar en nuestros scripts.
En esta ocasión nos vamos a centrar en las variables relacionadas con el paso de parámetros a nuestro script.

Parámetros

En bash podemos hacer referencia a cada parámetro pasado a un script de forma individual mediante las variables $1, $2, etc, que corresponden con el primer parámetro, segundo parámetro, etc.
Veamos un ejemplo:

lunes, 21 de enero de 2019

Aprendiendo Vim #1

Vim es un editor de textos que está presente en prácticamente todas las distribuciones Linux. Por este motivo, y por todas las funcionalidades que ofrece, es muy recomendable saber usarlo.
Con este post se inicia una serie dedicada a aprender las distintas opciones de Vim. La idea es aprender en cada entrada unas pocas combinaciones de teclas o funciones, con el objetivo de memorizarlas y ponerlas en práctica en cuanto tengamos la ocasión. Entrada tras entrada iremos aumentando los conocimientos sobre Vim hasta poder llegar a ser unos ninjas.

jueves, 17 de enero de 2019

Calcular fechas futuras o pasadas con date

Hoy vamos a ver una sencilla forma para calcular fechas futuras o pasadas respecto a la actual en el shell de Linux. Para ello usaremos el comando date.
Por hacer un breve repaso, el comando date devuelve la fecha y hora del momento actual:
$ date
mié ene 16 21:56:23 CET 2019
Podemos modificar el formato de salida para adecuarlo a nuestras necesidades:

lunes, 14 de enero de 2019

Ejecutar funciones bash dentro del comando find

El comando find es muy potente y se usa habitualmente en shell scripts. En ocasiones, se requiere ejecutar una serie de acciones por cada uno de los ficheros encontrados por find y esto puede resultar una tarea imposible. Veamos un ejemplo.
Propósito
Se requiere analizar todos los ficheros con extensión .py ubicados dentro de un directorio para detectar todos aquellos que no contienen la declaración de la codificación de texto utilizada. Para estos ficheros, añadir automáticamente la directiva siguiente:
# -*- coding: latin-1 -*-

jueves, 10 de enero de 2019

No guardar comandos ejecutados en historial de bash

Hoy vamos a ver un sencillo truco para evitar que los comandos ejecutados en nuestra sesión de bash pasen al fichero .bash_history. Será de utilidad cuando se quieren eliminar parte de las huellas de un acceso a un equipo o para evitar que otros sepan qué comandos ejecutó alguien en una conexión anterior.

lunes, 7 de enero de 2019

Usar tildes y eñes en Python

Python es un lenguaje de programación ampliamente usado para todo tipo de proyectos. Es usado también para realizar scripts de administración de sistemas que requieren una complejidad excesiva para realizarlos en bash, por lo que se usa casi un día sí y otro también.
Hoy vamos a ver cómo solucionar un problema que se da en ocasiones: cómo usar tildes, eñes y otros caracteres usados en castellano sin que nos de el siguiente error:
SyntaxError: Non-ASCII character '\xc3' in file ./script.py on line 3, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

jueves, 3 de enero de 2019

Crear un servidor web con un solo comando

Hoy vamos a ver cómo desplegar rápidamente un mini sevidor web para publicar una pequeña web.
Dado que se quiere publicar un fichero html y los requerimientos de la web son básicos, no instalaremos ningún servidor web al uso. Utilizaremos el comando ncat para ofrecer esta funcionalidad.