Este es el comando vramsteg que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
vramsteg - barra de progreso de CLI
SINOPSIS
Para mostrar / actualizar una barra de progreso:
vramsteg --min --máx --Actual [opciones]
Para eliminar una barra de progreso:
vramsteg --retirar
Para capturar la hora de inicio:
INICIO = $ (vramsteg --ahora)
Para incluir el tiempo transcurrido (que requiere una hora de inicio):
vramsteg --start = $ START --capsó ...
Para incluir el tiempo restante estimado (que requiere una hora de inicio):
vramsteg --start = $ START --estimar ...
Para usar un ancho de barra específico:
vramsteg --ancho 100 ...
Para mostrar el porcentaje completado:
vramsteg --porcentaje ...
Para mostrar una etiqueta al principio de la barra:
vramsteg --etiqueta Este is a Etiqueta ...
Para utilizar un estilo de representación alternativo:
vramsteg --estilo ...
DESCRIPCIÓN
('progreso' en sueco, casi) es una utilidad de línea de comandos de código abierto que proporciona
scripts de shell con un indicador de progreso con todas las funciones. La barra de progreso puede mostrar
tiempo transcurrido, tiempo restante estimado, porcentaje completado y etiquetas. La barra de progreso
puede tener colores especificados por el usuario y representarse en varios estilos.
Si tiene un script de shell o, de hecho, cualquier programa de línea de comandos que necesite una barra de progreso,
vramsteg puede ser la solución adecuada. Suponga que tiene un programa que está realizando una
operación prolongada, siempre que tenga la oportunidad de ejecutar vramsteg con frecuencia,
entonces integrar una barra de progreso es simple.
Es posible que haya visto barras de progreso utilizadas con buenos resultados en los comandos rsync o scp, entre
otros.
EJEMPLOS
Aquí hay un script de shell bash completo que ilustra cómo funciona vramsteg, en la forma más simple
caso:
#! / bin / bash
vramsteg --min 0 --max 4 - actual 0
sueño 1
vramsteg --min 0 --max 4 - actual 1
sueño 1
vramsteg --min 0 --max 4 - actual 2
sueño 1
vramsteg --min 0 --max 4 - actual 3
sueño 1
vramsteg --min 0 --max 4 - actual 4
echo
Obviamente, este es un ejemplo artificial, pero ilustra cómo se usa vramsteg para mostrar un 4
proceso paso a paso. Los argumentos --min y --max especifican lo que constituye 0% y 100% de la
funcionan y son valores enteros. El argumento --current representa dónde está la barra de progreso
en cualquier momento. El ejemplo tarda 4 segundos en completarse, pero esos comandos de suspensión son
proxies para lo que sea que esté haciendo su programa.
Un ejemplo más realista implica el bucle. Aquí hay un bucle de script de shell simple que
ser utilizado para un ejemplo más completo:
#! / bin / bash
para yo en {0..10}
do
vramsteg --min 0 --max 10 - actual $ i
sueño 1
done
echo
Una vez más, el comando de suspensión representa el trabajo real que se está realizando. Tenga en cuenta que el
El comando 'echo' al final proporciona un carácter de nueva línea para evitar que el texto
sobrescribiendo la barra. Para eliminar la barra cuando haya terminado, el script se convierte en:
#! / bin / bash
para yo en {0..10}
do
vramsteg --min 0 --max 10 - actual $ i
sueño 1
done
vramsteg --eliminar
Ahora la última lista reemplaza la necesidad del comando 'echo'.
Hay dos funciones que requieren un código adicional. Para mostrar el transcurrido
time, vramsteg necesita saber el momento en que comenzó el proceso. Porque vramsteg es
sin estado, la hora de inicio debe especificarse en cada llamada, pero primero la hora de inicio
debe ser capturado. Hay una opción --now que hace que la hora actual (en forma de época)
se visualizará:
vramsteg --ahora
1276361315
Este valor debe ser capturado por el script de shell, así:
INICIO = $ (vramsteg --ahora)
or
INICIO = `vramsteg --ahora`
Luego, junto con la opción --elapsed, se proporciona la hora de inicio para cada llamada de vramsteg
Me gusta esto:
#! / bin / bash
INICIO = $ (../ vramsteg --ahora)
para yo en {0..10}
do
vramsteg --min 0 --max 10 - actual $ i --start $ START --ecapsado
sueño 1
done
vramsteg --eliminar
Debido a que vramsteg no tiene estado, lo que significa que no registra ninguna información en el disco, el
La hora de inicio debe especificarse para cada llamada de vramsteg que la utilice.
La otra característica es una estimación del tiempo restante, que se utiliza de forma similar
Moda:
#! / bin / bash
INICIO = $ (../ vramsteg --ahora)
para yo en {0..10}
do
vramsteg --min 0 --max 10 - actual $ i --start $ START --estimate
sueño 1
done
vramsteg --eliminar
El tiempo estimado solo muestra números enteros de segundos, y debido a que la opción --now
también solo devuelve segundos completos, puede haber inexactitudes en el tiempo transcurrido y estimado
tiempo si el proceso es rápido.
De forma predeterminada, vramsteg usa 80 columnas para mostrar la barra de progreso. Puede anular esto
especificando un ancho diferente, pero si lo hace, también debe especificar ese ancho para
todas las llamadas de vramsteg, como:
vramsteg --eliminar --ancho 100
Si especifica un ancho que es demasiado pequeño para incluir características como la etiqueta, el porcentaje,
tiempo transcurrido y estimado, se informa un error.
Si ingresa el comando:
vramsteg
sin argumentos, se muestra el uso del comando, incluidos ejemplos de barras de progreso en
los estilos admitidos.
Use vramsteg en línea usando los servicios de onworks.net