Asociando zenity + crontab

Zenity es una herramienta que muestra cuadros de dialogo que interactuan graficamente con el usuario, a partir de comandos o scripts de shell. Se pueden enviar notificaciones de escritorio directamente desde la línea de comandos. Va bien sobretodo para los que somos un poco despistados y nos hace falta que nos recuerden lo que tenemos que hacer.
Biene por defecto en Debian/Fedora o se puede descargar para las demás distribuciones

zenity

zenity_backup

Podemos asociar estos cuadros de dialogo a crontab, que es un simple fichero de texto que guarda una lista de comandos a ejecutar en un tiempo especificado por el usuario. A través de editar directamente el fichero /etc/crontab  colocando debajo de la ultima linea el comando a ejecutar: read more

Leer más » 1 Comentario

Unp, facilitando la extracción de ficheros

Podría decirse de unp que es un extractor universal basado en un scrip de perl,
con el sencillo objetivo de extraer la mayor cantidad de archivos como sea posible, de cualquier tipo y de cualquier ruta de acceso al directorio actual.

Esto es perfecto sobre todo cuando se tiene dificultad para memorizar los comandos para extraer los ficheros.
Esta disponible desde los repositorios oficiales de Debian/Fedora y se puede descargar para las demás distribuciones.

– Formatos soportados:

[code]unp -s[/code] read more

Leer más » 3 Comentarios

Reproduce o descarga videos de Youtube por linea de comandos

El otro dia estaba tratando de instalar un cliente de terminal para Spotify, el reproductor de musica online.
Se trataba de despotify, no lo conseguí ya que esta obsoleto y además resulta que solo es para cuentas premium.

Pero buscando me encontré con un cliente para terminal llamado Poor man’s Spotify, que traducido seria “el spotify de los pobres”. La verdad que es una joya en bruto, porque reproduce y descarga vídeos online de youtube a traves de la linea de comandos. Entre sus características: read more

Leer más » 1 Comentario

Borrado seguro de ficheros con SHRED

En ocasiones necesitamos eliminar definitivamente ficheros o particiones que contienen información sensible como ficheros con contraseñas, datos de la empresa, información personal, cuentas bancarias, si se va a tirar/vender un viejo disco duro o simplemente si uno es un paranoico de la seguridad (y no tiene encriptados sus datos).

A través del comando rm podemos borrar ficheros, pero este borrado solo destruye un índice con la ubicación del fichero, no se borra el registro de donde se ubica físicamente ese archivo. read more

Leer más » 4 Comentarios

QRencode, creando códigos QR desde la terminal

QRencode es una aplicación para la creación de códigos QR. Al ser escaneados por un teléfono móvil, podemos aplicarlos para agregar contactos a la libreta de direcciones (Vcard), enlazar a webs, vídeos, mapas, textos, etc.

– Comenzamos con la instalación:

[code]sudo apt-get install qrencode -y
[/code]

El comando básico es qrencode -o [parámetros]  y la dirección del enlace [cadena]

La opción – o especifica el archivo de salida, que siempre es un archivo .png.

– Utilización  para redirecciones a webs, vídeos, etc. read more

Leer más » 2 Comentarios

Aprende Shell de Ubuntu Linux con Explain Shell

explainshell_logo

Si alguna vez has tenido interés en conocer en profundidad los comandos de un shell pero los manuales llenos de texto te aburren, existe en internet una página llamada explainshell.com que te permite, de una manera intuitiva, aprender el significado de los comandos y cada uno de las opciones y comandos.

El método es el siguiente, copias y pegas un comando completo con sus opciones y argumentos y, a continuación, te aparecerá el significado de cada una de las partes.

Esta ayuda se basa en los manuales que ofrece Ubuntu para su línea de comandos en su terminal. read more

Leer más » 3 Comentarios

Lo mejor de mi timeline del 21 al 27 de julio

Leer más » 1 Comentario

Lanzar un Script en Linux de cuatro maneras diferentes

Hace un tiempo Nacho López publicó una estupenda entrada titulada Bash – Mi pequeño manual de referencia [Cheat Sheet], que si no habéis tenido ocasión de leer os recomiendo hacerlo.

Y es que en determinadas ocasiones nos interesa lanzar un Script (de los que hemos podido aprender a través de esa entrada)de una manera determinada. A continuación os propongo cuatros formas de lanzar un Script en nuestro sistema Linux:

  1. Ejecutar el Script usando directamente el nombre del archivo:
    ahornero@6581-D:~$ cd /home/ahornero
    ahornero@6581-D:~$ ./mi_script
    ó
    ahornero@6581-D:~$ /home/ahornero/mi_script
  2. Ejecutar el Script especificando el nombre del intérprete:
    (usando el intérprete SH)
    ahornero@6581-D:~$ sh ./mi_script
    (usando el intérprete BASH)
    ahornero@6581-D:~$ bash ./mi_script
  3. Ejecutar el Script usando . ./ (punto espacio punto barra):
    ahornero@6581-D:~$ . ./mi_script
  4. Ejecutar el Script usando el comando source:
    ahornero@6581-D:~$ source ./mi_script

Creo que exceptuando el último caso todos conocíais cada una de las opciones, nunca esta de más recordar lo que podemos hacer. read more

Leer más » 7 Comentarios

Programar en Bash, pequeño manual de referencia [Cheat Sheet]

Aquí os dejo mi cheat sheet, o pequeño manual de referencia, personal sobre Bash. Faltan cosas pero creo que he cubierto lo más básico. Espero que os guste. 😉

1. Cómo ejecutar scripts Bash

Para escribir en Bash puedes hacerlo directamente desde la consola/terminal de GNU/Linux, sin embargo, su mayor potencia radica en poder escribir ‘scripts’ y ejecutar piezas de código para automatizar tareas. Aquí muestro paso a paso un ejemplo.

1.1. Escribe un ‘script’ Bash

Abre tu editor de textos favoritos y escribe el siguiente código.

#!/bin/bash
echo "Hola mundo"

Guárdalo como holamundo.sh (la extensión no importa pero ésta es renococida por muchos editores de texto) .

1.2. Dale permisos

Para lanzar el ‘script’ Bash, dále permisos de ejecución. Para ello escribe en tu terminal/consola de comandos:

chmod u+x holamundo.sh

Recuerda ejecutar este comando y los siguientes en la misma carpeta/directorio donde se encuentra holamundo.sh

1.3. Ejecútalo

Lanza el ‘script’ ejecutando en tu terminal/consola:

./holamundo.sh

Si no ha habido ningún problema se ejecutará el ‘script’ de Bash mostrando la frase “Hola mundo”.

2. Características Bash

Aquí se mostrarán las características de dicho intérprete de comandos o shell de GNU. Recuerda que los comandos son las acciones a ejecutar desde la consola/terminal Linux. En la siguiente sección hay una recopilación de ellos.

2.1. Comentarios

Los comentarios en Bash se hacen línea a línea con el símbolo #.

#!/bin/bash

#
# Hola Mundo comentado
#

echo "Hola mundo"

2.2. Variables

Las variables no tienen tipo, es decir, una variable puede contener una cadena, un número, etc. sin necesidad de definirlo.

La sintaxis es:

nombre_variable=valor_variable

Es obligatorio no dejar espacios antes o despues del simbolo ‘=’ ya que sino Bash interpretaría la variable como un comando Linux.

Para acceder a una variable simplemente escribe como prefijo $ en el nombre de la variable.

echo $varname

Un ejemplo sencillo:

#!/bin/bash

# Asignación y salida de variables

mivariable="Me llamo Nacho"
echo $mivariable

2.2.1. Paso de variables

Cuando ejecutas desde tu terminal/consola tienes la posibilidad de pasarle más argumentos. Por ejemplo:

./miScript.sh hola 4

Para recoger estos valores escribe $ y a continuación el número de posición del argumento pasado. El primer argumento tiene valor $1, que sería ‘hola’, y el segundo argumento sería $2, en el ejemplo sería el número 4. La variable $0 es el propio nombre del archivo.

#!/bin/bash

#
# Paso de variables
#

echo "Tu primer argumento es" $1
echo "Tu segundo argumento es" $2

También hay que destacar que $? guarda el valor de salida del último comando ejecutado. $* almacena todos los argumentos y $# es el número de argumentos pasados.

2.3. Comparaciones y/o expresiones

Los condicionales y bucles se rigen mediante la evaluación de una expresión. Por eso lo primero es saber cómo programar en Bash las evaluaciones de una expresión.

La evaluación de una expresión da como resultado verdadero o falso. Si la comparación o evaluación de la expresión es verdadera se ejecutará el bucle o la condicional, si es falsa la evaluación no se ejecutará.

En Bash, la sintaxis es la siguiente:

test expresión

ó

[ expresión ]

Un ejemplo de expresión sería [ 3 -eq 5 ] que comprueba si el valor 3 es igual a 5. Como es incorrecto, el valor que devuelve es falso. Los símbolos [ y ] tienen que estar obligatoriamente separados por un espacio.

2.3.1. Comparaciones numéricas

numero1 -eq numero2: Devuelve verdadero si 'numero1' es igual a 'numero2'. numero1 -ge numero2: Devuelve verdadero si 'numero1' es igual o mayor a 'numero2'. numero1 -gt numero2: Devuelve verdadero si 'numero1' es mayor a 'numero2'. numero1 -le numero2: Devuelve verdadero si 'numero1' es igual o menor a 'numero2'. numero1 -lt numero2: Devuelve verdadero si 'numero1' es menor a 'numero2'. numero1 -ne numero2: Devuelve verdadero si 'numero1' no es igual a 'numero2'. read more

Leer más » 23 Comentarios