Un truco genial con scripts bash con arreglos

[*]
Si hace muchos scripts de bash, sabe que hay algunos trucos geniales que puede hacer con ellos. Bash es una herramienta muy flexible. La mayoría de los usuarios de Linux no se dan cuenta de lo poderoso que es y rara vez lo usan. Pero cuando lo necesitas, siempre está ahí. Juego mucho con bash y lo uso para varias cosas. La línea de comando es, por supuesto, mi amiga. Con un comando, puede hacer casi cualquier cosa, pero a veces la cosa más simple, por ejemplo, contar archivos en un directorio, se le puede escapar. Para hacer esto como equipo, debe emitir algo como ls -1 ~ / | inodoro -l. No siempre es fácil de recordar. Pero supongamos que puede crear un script Bash simple que contará la cantidad de archivos en un directorio y enumerará esos archivos. Eso sería genial... y aplicable.
En este artículo, le presentaré un script bash simple que hará exactamente eso: contar y enumerar la cantidad de archivos en un directorio. El script bash es bastante simple y aprovecha las matrices.
¿Qué es una matriz?
Si no está seguro de qué es una matriz, no tenga miedo. Una matriz es solo una disposición sistemática de objetos. Esta disposición suele ser en filas y columnas. Por supuesto, hay definiciones mucho más complejas de arreglos... especialmente cuando se trata de programación de aplicaciones. Pero por el bien de este escenario bash, es seguro detenerse en esta definición.
Texto

El script para la matriz es bastante simple. La Figura 1 muestra cómo se verá el script si lo edita en su editor favorito. Y para que disfrutes de copiar/pegar te doy el propio código:
matriz = (`ls`)
wd = `contraseña`
longitud = $ {# matriz[*]}
notificar-enviar "Tienes $ len objetos en $ wd".
yo = 0
aún [ $i -lt $len ]; que hacer
echo "$ i: $ {matriz[$i]} "
déjame ++
hecho
Lo que debe hacer es copiar este código en un archivo, guardar el archivo (llamémoslo formación) y luego dé a este archivo permiso para ejecutar con el comando chmod ugo + matriz x. Le doy permisos de usuario/grupo/otros para ejecutar en caso de que copie este archivo / usr / papelera.
Naturalmente, este escenario es un poco erróneo. Por ejemplo, si copió este script en un archivo / usr / papelera directorio puede ejecutarlo desde cualquier directorio y le dará todos los resultados necesarios. Sin embargo, si intenta ejecutar este comando desde el cuadro de diálogo de inicio (haga clic en

Si ejecuta el script desde la línea de comando, los resultados se verán como en la Figura 2. Aquí puede ver ambos informe-enviar resultados, así como los resultados impresos en el terminal. Un pequeño gran truco.
Obviamente, este escenario es un poco limitado, ¿verdad? El propósito real de este ejercicio era mostrarle un script de shell un poco más avanzado, así como también cómo el script puede interactuar con informe-enviar mandar
Observaciones finales
Shell scripting es una herramienta sorprendentemente flexible y útil. Todos aquellos usuarios de Linux que evitan la línea de comandos no tienen idea de la potencia que les falta. Con este simple script puedes cambiarlo o usarlo para cualquier cantidad de posibilidades. Volveremos a las matrices en el script y mucho, mucho más.
Deja una respuesta
Artículos de interés