Bash shell – Lenguaje Python
los Bourne Again Shell (código fuente), casi siempre denominado simplemente «Intento«, interpreta y ejecuta la entrada ingresada desde una fuente como el usuario o un programa. Bash es una implementación del concepto de shell y se usa a menudo durante el desarrollo de software Python como parte del entorno de desarrollo de un programador.
Contrata a un experto en Python para iniciar tu proyecto hoy mismo:
¿Cómo usan Bash los desarrolladores de Python?
Si está programando en el terminal en macOS o Linux, o utilizando el Subsistema de Windows para Linux en Windows 10, puede acceder fácilmente a Bash si aún no es su shell predeterminado.
Puede mostrar qué shell está utilizando actualmente haciendo eco del SHELL
variable de entorno, así:
Que luego imprimirá el shell que está utilizando actualmente. Por ejemplo, en macOS estoy usando Bash de forma predeterminada, por lo que se imprime el comando echo:
La cantidad de uso de Bash o cualquier shell probablemente dependerá de su entorno de desarrollo, especialmente si está utilizando un editor como Vim en lugar de un IDE como PyCharm, porque a menudo es más fácil realizar ciertas tareas en el shell. Por ejemplo, la mayoría de los desarrolladores que conozco que usan PyCharm buscarán alguna instancia de código fuente directamente en su IDE, mientras que yo uso una combinación de Vim y tmux, por lo que con frecuencia cambio entre paneles para usar comandos como grep
para hacer mis búsquedas de código fuente.
No hay una forma correcta de realizar una tarea como la búsqueda de código fuente, en realidad es lo que funciona para su cerebro como desarrollador lo que guiará la frecuencia con la que interactúa con el shell Bash.
Empezando con Bash
Trabajar con un shell, Bash o de otro tipo, es intimidante la primera vez que intenta comenzar. Estás mirando al $
rápido sin mucha dirección.
Cuando sea completamente nuevo en el uso de Bash, es una buena idea al menos escanear, si no tomarse un tiempo adicional para leer en profundidad la documentación de los comandos que usa cada desarrollador. Los siguientes comandos se utilizan con tanta frecuencia en Bash que un desarrollador experimentado probablemente ya ni siquiera piensa en ellos, se convierten en una parte natural de su flujo de trabajo:
Si sabe cómo usar los comandos anteriores, al menos podrá moverse por el sistema de archivos, crear, mover y actualizar archivos y saber qué hay en su (s) dispositivo (s) de almacenamiento.
Los siguientes comandos son algo más avanzados, pero los desarrolladores también los usan con frecuencia:
Las listas anteriores ni siquiera son exhaustivas para los comandos que necesita saber cuando trabaja con Bash. Lea algunos de los siguientes tutoriales introductorios para comprender mejor cómo trabajar con este shell:
Scripting bash
Bash se usa no solo como un indicador interactivo sino también para la creación de scripts, lo que hace posible ejecutar uno o más comandos Bash almacenados dentro de un archivo. Estos scripts pueden ser cortos, con un solo comando, o muy complicados con la lógica del flujo de control, para bucles y casi cualquier cosa que desee automatizar o calcular porque
Bash es un lenguaje de programación completo de Turing.
Los scripts complejos de Bash a veces tienen una reputación negativa porque pueden ser difíciles de leer y comprender si usted no es el autor original (o está leyendo su propio script después de un período de tiempo significativo). Hay muchas formas de realizar las mismas tareas con Bash, por lo que los archivos suelen ser confusos de leer, a menos que el autor de un script incluya documentación clara. Este problema de legibilidad suele ser un problema menor con los scripts de Python porque se aplica el espaciado y la biblioteca estándar encapsula tareas comunes.
Es una buena idea pensar en cómo quiere estructurar sus scripts Bash a medida que crecen. Los siguientes recursos brindan información sobre lo que debe considerar al codificar scripts Bash.
- Esta plantilla de Bash segura mínima contiene un script Bash de 86 líneas que el autor afirma que una vez que lo comprenda y lo use como base, hará que sus scripts sean más fáciles de mantener con el tiempo.
- Crear un script de finalización de bash es un gran tutorial que lo guía a través de un script Bash razonablemente complejo para completar la sintaxis en otros scripts de shell Bash.
- Cualquiera puede escribir un buen bash (con un poco de esfuerzo) cubre los conceptos básicos de los scripts de shell y proporciona algunas recomendaciones para crear scripts más fáciles de mantener, como el uso de linters y formateadores.
- De Google Guía de estilo de carcasa cubre cómo escribir scripts de shell consistentes y fáciles de mantener, lo cual es particularmente importante si alguna vez ha intentado depurar un script de shell hacky que nunca fue destinado a ser utilizado por nadie más que el autor original.
- Bash scripting peculiaridades y consejos de seguridad explica las construcciones de programación básicas de Bash como
for
los bucles y la asignación de variables luego entran en formas de evitar problemas extraños en su código. - Si todo lo demás falla cuando intentas usar scripts Bash, este artículo sobre reemplazar los scripts de Bash con Python es una guía sobre el intercambio en Python para secuencias de comandos administrativas, que incluye qué hacer para reemplazar herramientas invaluables de línea de comandos como
awk
,
sed
ygrep
.
Recursos adicionales de Bash
Los siguientes recursos cubren casos de uso de Bash más avanzados y qué trampas debe intentar evitar mientras trabaja con el shell o escribe scripts.
- Avanzando en el caparazón de Bash cubre conceptos importantes como la sintaxis bang, los comandos de movimiento, la terminación de tabulación y los alias.
- Dominando Bash y Terminal muestra métodos para repetir comandos, cambiar directorios y manejar procesos en segundo plano.
- Diez cosas que desearía haber sabido sobre Bash cubre algunos casos extremos que es muy útil conocer, como el uso adecuado del código de salida y las opciones de configuración a través del
set
mando. También hay una gran publicación de seguimiento llamada Diez cosas más que desearía haber sabido sobre Bash que cubre nuevos temas como la re-ejecución de comandos sobre la marcha utilizando el carácter de zanahoria. - Las Siete variables de Bash sorprendentes La publicación continúa la serie examinando variables integradas como
PROMPT_COMMAND
,CDPATH
yREPLY
que puede simplificar sus scripts utilizando valores que Bash ya ha almacenado para usted. - Formas seguras de hacer cosas en bash le muestra cómo no dispararse en el pie mediante el uso de prácticas de codificación seguras con sus scripts de shell.
- Los Marco Bash Infinity proporciona un texto repetitivo y una biblioteca estándar para proyectos Bash para que sean más fáciles de leer y mantener. Si alguna vez ha intentado leer los scripts de Bash de otra persona o incluso los suyos propios después de dejarlos a un lado durante un par de meses, sabe que cualquier cosa que mejore la legibilidad es un gran paso adelante de Vanilla Bash.
- Estado estático es una aplicación Bash que genera una página de estado personalizable y que se puede alojar para sus servicios.
- Uso de alias para acelerar su flujo de trabajo de Git tiene un montón de alias de shell que le facilitan la ejecución de comandos Git complicados o poco comunes.
- 6 consejos antes de escribir tu próximo Bash Cronjob cubre cómo iniciar sus scripts con shebang, redireccionar la salida, tiempos de espera y privilegios de sudo.
- Mejor historia de Bash muestra cómo hacer que su historial de Bash sea más útil al hacer que almacene más comandos anteriores (lo que ocupa más almacenamiento persistente pero no es un gran problema en 2019) y agregar marcas de tiempo al
history
mando. - 9 comandos de Evil Bash explicados presenta una lista de comandos nunca deberías correr, pero puede aprender acerca de sus habilidades destructivas leyendo las descripciones proporcionadas por el autor.
- Inicio más rápido de bash e Inicio de bash aún más rápido son dos excelentes tutoriales que le ahorrarán mucho tiempo si abre con frecuencia nuevos shells Bash. En muchos sistemas, puede reducir fácilmente el tiempo de inicio del shell, que puede ser innecesariamente lento.
- Panel de control de Bash HTTP (código fuente) es una aplicación útil completamente escrita en scripts de shell Bash que monitorea el estado de uno o más sitios web para asegurarse de que estén en funcionamiento.
Esta entrada tiene 0 comentarios