cli

Como redimensionar un video en Linux

Podemos redimensionar facilmente el tamaño de los videos usando la linea de comandos a traves del programa ffmpeg

$ ffmpeg -i archivooriginal.mp4 -vf scale=800:-1 archivodestino.mp4

El comando ffmpeg recibe dos parametros:

  • -i archivoorigina.mp4
    En este parametro indicamos el nombre del archivo de video que queremos redimensionar.
  • -vf scale=800:-1
    Aca le indicamos a ffmpeg que redimensione el video a 800px de ancho. El valor de -1 indica que la altura se redimensiona automaticamente.

⚙ Docker Compose: no module named ordered_dict

Hoy dia, fallo la ejecucion de docker-compose en uno de mis servidores.

El problema:

E ImportError: No module named ordered_dict

La solución ?

Asegurarnos de tener la version urllib3-1.22, actualmente la version en produccion es la 1.26

Para tal efecto ejecutamos los siguientes comandos

pip uninstall urllib3
pip install urllib3=1.22

#HappyCoding

Bash: Ejecutar un proceso en domingo

Tenemos un proceso configurado en CRON para ejecutar un script de bash. Sin embargo, ciertas partes de dicho proceso solo deben ejecutarse un dia a la semana.

Para eso vamos a programar nuestro script en bash para solo se ejecute en domingo.

day=`date +%u`
if [ $day eq 0 ]; then
# Proceso que se ejecuta solo en domingo
fi

El comando date +%u nos devuelve el numero de dia de la semana.
Siendo 0 domingo, 1 Lunes, 2 Martes, 3 Miercoles, 4 Jueves, 5 Viernes, 6 Sabado.

#HappyCoding

Como convertir imagenes webp a png usando la linea de comandos

El formato webp, es el “nuevo” formato de google para compresion de imagenes sin perdida ideal para internet. Una misma imagen en webp ( 94k ) y en png ( 1.1 M ).

Sin embargo,  no todas las aplicaciones de linux ( o windows o mac ) estan preparadas para trabajar con este formato. Asi que para poder usarlas fuera del navegador deberemos convertirlas.

En linux existe una herramiento webp que vamos a instalar

sudo apt install webp

Y ahora podemos hacer la conversion con el siguiente comando

dwebp <imagen.webp>  -o <imagen.png>

Por si acaso, tambien podemos hacer el camino inverso. Hacer la conversion al nuevo formato webp usando el comando

cwebp <imagen.png> -o <imagen.webp>

Yo ya tengo varios proyectos web y mobiles donde valdria la pena usarla.

DU Ordenado

Uno de mis comandos favoritos es

du -hs *

el cual me permite conocer los directorios y la cantidad de Gigas que ocupan. Sin embargo, en una lista larga de archivos estos suelen venir desordenados. Y aunque se puede concatenar con el comando sort, al tener estos registros un sufijo ( K, M, G ) suele ser inservible utilizar el comando sort.

Sin embargo, hoy descubri un parametro de sort ( -h ) el cual le permite entender los sufijos. Ahora si tengo una lista de 50 directorios, perfectamente ordenados por tamaño.

du -hs * | sort -h

Como cambiar la zona horaria desde el terminal

Si necesitas cambiar la zona horaria de tu computadora o servidor puedes hacerlo de la linea de comandos o terminal.

Para tal efecto existe el comando timedatectl.

Podemos consultar la zona horaria actual

$ timedatectl status

Este mismo comando nos sirve para cambiar nuestra zona horaria:

$ sudo timedatectl set-timezone America/Lima

Si deseas consultar la lista de zonas horarias que existentes:

$ timedatectl list-timezones