Scripts de shell completos para la segunda edición de Wicked Cool Shell Scripts
https://www.nostarch.com/wicked2
Obtener el script wcss_shell.sh
configurará su entorno bash para que los scripts se puedan llamar desde PATH en lugar de tener que llamarlos de manera relativa o absoluta.
Capítulo 0: Curso intensivo
Este capítulo se centra en poner al día a un usuario novato de la línea de comandos sobre qué son los scripts de shell, cómo construirlos y por qué son útiles.
Capítulo 1: La biblioteca de códigos perdidos
Los lenguajes de programación en el entorno Unix, particularmente C, Perl o Python, tienen extensas bibliotecas de funciones y utilidades útiles para validar formatos numéricos, calcular compensaciones de fechas y realizar muchas más tareas útiles. Cuando trabajamos con el shell, nos dejamos mucho más solos, por lo que este primer capítulo se centra en varias herramientas y trucos para hacer que los scripts del shell sean más amigables, tanto a lo largo del libro como dentro de nuestros propios scripts. He incluido varias funciones de validación de entrada, una interfaz de usuario programable simple pero poderosa para bc, una herramienta para agregar comas rápidamente para mejorar la presentación de números muy grandes, una técnica para eludir Unixes que no admiten el útil indicador -n para hacer eco y un script de inclusión para usar secuencias de colores ANSI en scripts.
Capítulo 2 y Capítulo 3: Mejora de comandos y creación de utilidades
Estos dos capítulos presentan nuevos comandos que extienden y expanden Unix de varias maneras útiles. De hecho, un aspecto maravilloso de Unix es que siempre está creciendo y evolucionando, como se puede ver con la proliferación de shells de comandos como ksh y zsh y alternativas a bash. Soy tan culpable de ayudar en esta evolución como cualquier otro hacker, por lo que este par de capítulos ofrece scripts que implementan una calculadora interactiva amigable, una función de eliminación, dos sistemas diferentes de recordatorio/seguimiento de eventos, una reimplementación del comando de localización. , una interfaz útil para revisar la ortografía, un comando de fecha de zona horaria múltiple y una nueva versión de ls que aumenta la utilidad de los listados de directorios.
Capítulo 4: Ajustando Unix
Esto puede ser una herejía, pero hay aspectos de Unix que parecen rotos, incluso después de décadas de desarrollo. Si se mueve entre diferentes versiones de Unix, particularmente entre distribuciones de Linux de código abierto y Unix comerciales como OS X, Solaris o Red Hat, sabrá que faltan indicadores, comandos faltantes, comandos inconsistentes y problemas similares. Por lo tanto, este capítulo incluye reescrituras y interfaces de comandos de Unix para hacerlos un poco más amigables o más consistentes con otros Unix. Scripts incluye un método para agregar indicadores de comando de palabra completa de estilo GNU a comandos que no son GNU y un par de scripts inteligentes para facilitar considerablemente el trabajo con varias utilidades de compresión de archivos.
Capítulo 5 y Capítulo 6: Herramientas de administración del sistema
Si ha leído este libro, es probable que tenga acceso administrativo y responsabilidad administrativa en uno o más sistemas Unix, incluso si es solo un sistema personal Ubuntu o BSD. Estos dos capítulos ofrecen bastantes scripts para mejorar su vida como administrador, incluido el uso del disco, herramientas de análisis, un sistema de cuota de disco que envía correos electrónicos automáticamente a los usuarios que superan su cuota asignada, una herramienta que resume qué servicios están habilitados independientemente de si usted use inetd o xinetd, una reimplementación de Killall, un validador de crontab, una herramienta de rotación de archivos de registro y un par de utilidades de respaldo.
Capítulo 7: Web y usuarios de Internet
Internet es omnipresente hoy en día. Este capítulo incluye un montón de trucos de scripts de shell realmente interesantes que muestran cómo la línea de comandos de Unix puede ofrecer algunos métodos maravillosos y bastante simples para trabajar con recursos en Internet, incluida una herramienta para extraer URL de cualquier página web. Un rastreador del clima, una herramienta de búsqueda en una base de datos de películas, un rastreador de cartera de acciones y un rastreador de cambios para un sitio web con notificación automática por correo electrónico cuando aparecen cambios.
Capítulo 8: Trucos para webmasters
La otra cara de la moneda web, por supuesto, es cuando ejecuta un sitio web, ya sea desde su propio sistema Unix o en un servidor compartido en otro lugar de la red. Si es un webmaster, los scripts de este capítulo ofrecen herramientas bastante interesantes para crear páginas web sobre la marcha, procesar formularios de contacto, crear un álbum de fotografías basado en la web e incluso la capacidad de registrar búsquedas web.
Capítulo 9 y Capítulo 10: Administración web e Internet
Estos dos capítulos consideran los desafíos que enfrenta el administrador de un servidor con acceso a Internet, incluidos dos scripts diferentes para analizar diferentes aspectos del registro de tráfico de un servidor web, herramientas para identificar enlaces internos o externos rotos en un sitio web, un script de revisión ortográfica de una página web, y una elegante herramienta de administración de contraseñas web Apache que hace que mantener un archivo .htaccess preciso sea muy sencillo. También se exploran técnicas para duplicar directorios y sitios web completos con herramientas de duplicación.
Capítulo 11: Scripts de Mac OS X
OS X es un tremendo avance en la integración de Unix y una interfaz gráfica de usuario atractiva y comercialmente exitosa. Más importante aún, debido a que cada sistema OS X incluye un Unix completo escondido detrás de una bonita interfaz, hay una serie de scripts útiles y educativos que se pueden escribir, y eso es exactamente lo que explora este capítulo. Además de reescribir adduser, lo que permite configurar cuentas de usuario de OS X en segundo lugar desde la línea de comandos, los scripts de este capítulo exploran cómo OS X maneja los alias de correo electrónico, cómo iTunes almacena su biblioteca de música y cómo cambiar la ventana de Terminal. títulos y mejorar el útil comando de apertura.
Capítulo 12: Diversión y juegos
¿Qué es un libro de programación sin al menos algunos juegos? Este capítulo integra muchas de las técnicas e ideas más sofisticadas del libro para presentar tres juegos divertidos y desafiantes. Si bien es entretenido, también vale la pena estudiar el código de cada uno a medida que lee el capítulo. De particular interés es el juego del ahorcado, que muestra algunas técnicas de codificación inteligentes y trucos de scripts de shell.
Capítulo 13: Trabajar con la nube
Desde la primera publicación de este libro, Internet ha asumido cada vez más responsabilidades en nuestra vida diaria. Muchas de estas responsabilidades giran en torno a la sincronización de dispositivos y archivos con servicios en la nube como iCloud, Dropbox y Google Drive. Este capítulo cubre scripts de shell que nos permiten aprovechar al máximo estos servicios para garantizar que los archivos o directorios estén respaldados y sincronizados, así como un par de scripts de shell que muestran características específicas de OS X para fotos o texto a voz.
Capítulo 14: ImageMagick y trabajar con archivos gráficos
Las aplicaciones de línea de comandos no tienen por qué limitarse únicamente a datos o gráficos basados en texto. Este capítulo está dedicado a identificar y manipular imágenes desde la línea de comandos utilizando el conjunto de herramientas de procesamiento de imágenes incluido en el software de código abierto ImageMagick. Desde identificar tipos de imágenes hasta enmarcar y marcar imágenes, escribimos scripts de shell para realizar tareas de imágenes comunes, además de algunos casos de uso más.
Capítulo 15: Días y Fechas
Tratamos con fechas y citas todo el tiempo, y calcular cuánto tiempo transcurre entre dos fechas, qué día fue una fecha determinada o cuántos días faltan para una fecha específica son problemas comunes a los que nos enfrentamos. En el último capítulo de este libro, cubrimos cómo podemos resolver estos problemas con scripts de shell fáciles de usar.