firefox english

Dos trucos simples con scripts de Shell para mejorar su productividad [Linux]

Una de las mejores cosas de la línea de comandos de Linux es su capacidad para crear scripts que le faciliten la vida. En su nivel más básico, un script de shell es una lista de comandos que se ejecutan uno tras otro, como si los hubiera escrito usted mismo en la línea de comandos. Si bien la programación de shell (por ejemplo, Bash Shell) puede ser tan compleja como la programación en otros lenguajes, es más fácil aprender algunos trucos básicos que puede usar para ser más eficiente.

Nota: Si bien debería poder usar estos consejos de inmediato, tenemos una excelente Guía para principiantes para escribir scripts de shell de Linux que puede consultar para obtener más detalles.

Los fundamentos de los fundamentos

Ya tendrá todo lo que necesita para aprovechar estos trucos en cualquier distribución moderna de Linux: un editor de texto y un shell (aquí usaremos el shell Bash). Abre tu editor de texto y estarás listo para escribir. Guardará las secuencias de comandos como archivos de texto sin formato… algunas personas prefieren usar una extensión de archivo «.sh» para ayudar a identificar las secuencias de comandos.

También deberá aprender un poco sobre la sintaxis o el formato de los scripts de shell. Una cosa que deberá recordar es colocar la siguiente línea en la parte superior de cada secuencia de comandos:

Cuando ejecuta un script en el símbolo del sistema, esta línea le dice a su shell actual qué otro shell debe usar para ejecutarlo, si son diferentes. La otra cosa que deberá recordar es hacer que su secuencia de comandos sea ejecutable, lo cual haremos en un momento. Pero por ahora, creemos un script nuevo y útil.

Un guión para hacer las cosas un poco diferentes

La Guía para principiantes anterior hace un excelente trabajo al explicar las variables y mostrarle cómo tomar argumentos (cualquier palabra/frase que escriba después del nombre del comando) y usarlos. Pero también puedes usar lo que se llama «Variables de entorno» para cambiar cosas sobre cómo se ejecutan sus programas. Por ejemplo, soy un hablante de japonés, y aunque los programas de Linux pueden manejar la entrada de japonés, a veces siento nostalgia por la interfaz de usuario japonesa. Hay variables de entorno para «Configuración regional», que definen en qué idioma se muestran los programas. Por ejemplo, si quiero volver a mis días de navegación web en Japón, usaría lo siguiente:

Pero a menudo olvido si esa variable de entorno debe ser «LANG», «LC_TYPE» o una de las otras 10 variables locales. Prefiero simplemente «japanizarlo». Así que creé un script Bash llamado «jpit» de la siguiente manera:

#!/bin/bash
LANG="ja_JP" $1

Esto mostrará los menús y la interfaz traducidos al japonés (puede ver la interfaz de usuario en inglés a continuación a la izquierda y el resultado cuando se inicia con «jpit» a la derecha).

firefox ingles

firefox japonés

Luego, simplemente hice que el script fuera ejecutable con lo siguiente:

chmod +x /home/aaron/bin/jpit

Coloqué esto en mi directorio ~/bin porque está en mi RUTA, y ahora puedo ejecutarlo desde cualquier terminal o KRunner e insertar cualquier nombre de aplicación que acepte la variable «LANG». Puede usar un script como este para ejecutar un programa con un conjunto diferente de opciones, ya sean variables de entorno, indicadores de línea de comando o archivos de entrada/salida.

Un guión para hacer esto, luego aquello

Algunas veces me encuentro ejecutando varios comandos iguales, en el mismo orden, en una fila. Inmediatamente me viene a la mente lo siguiente:

sudo apt-get update
sudo apt-get upgrade

Afortunadamente, hay una manera de ejecutarlos como un solo comando y luego «alejarse» hasta que se completen todos:

sudo apt-get update && sudo apt-get upgrade

los && en este comando significa que el segundo comando solo debe ejecutarse después del primero, y solo si el primero se completa sin errores. los apt-get Sin embargo, los comandos anteriores probablemente le preguntarán si desea instalar algunas dependencias, entonces, ¿cómo es esto útil?

Volvamos a nuestro viejo amigo, Pandoc. Hemos visto en artículos anteriores que Pandoc tiene opciones para convertir Markdown a otros formatos diferentes. Pero, ¿qué sucede si desea convertirlo a HTML, ODT, DOCX y un libro electrónico, todo a la vez? Simple: cree un script de shell con lo siguiente:

#!/bin/bash
pandoc -r markdown -w html -o $1.html $1 &&
pandoc -r markdown -w docx -o $1.docx $1 &&
pandoc -r markdown -w odt -o $1.odt $1 &&
pandoc -r markdown -w epub -o $1.epub $1

Esto tomará cualquier documento de Markdown que le proporcione como argumento y generará cada uno de los formatos deseados ejecutando el comando Pandoc un formato a la vez. Un comando, cuatro productos finales. ¡Eso sí que es eficiencia!

Incluso puede combinar lo anterior con las opciones para crear todo tipo de scripts útiles. Porque aunque a todos nos encanta la línea de comandos, no hay motivo para dedicarle más tiempo del necesario…

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Experto Geek - Tu Guía en Tendencias Tecnológicas