#!/usr/bin/env bash
isofile=`zenity --entry --text="Introduzca un nombre para la ISO:"`
mkisofs -r -o 1$isofile.iso $1 | zenity --progress --pulsate --title "Creando ISO" --text "Tenga paciencia mientras se crea la ISO"
#!/usr/bin/env bash
zenity --question --text="¿Desea crear una imagen ISO a partir de esta carpeta o archivo?" || exit
(mkisofs -r -o "$*".iso "$*" 2>&1 |
while read i; do
PARCIAL=$(echo $i | grep -o [0-9]*'\.'[0-9]*)
if [ $PARCIAL ]; then
echo $PARCIAL
echo "# $PARCIAL% realizado..."
fi;
done
echo "# Finalizado." ) | zenity --progress --title="Creando \"$*.iso\""
gracias por interesarte tio
#!/usr/bin/env bash
zenity --question --text="¿Desea crear una imagen ISO a partir de esta carpeta?" || exit
(
echo "#Creando imagen ISO..."
mkisofs -r -J -o $*.iso $*
if [ "$?" = "0" ]; then
echo "#La imagen ISO a sido creada correctamente"
else
echo "#Se produjo un error al crear la ISO."
fi
)|zenity --progress --pulsate
asunto resuelto xDDD era como tu dices... unas simples comillas y a funcionar... xDDDD "$*"
#!/usr/bin/env bash
zenity --question --text="¿Desea crear una imagen ISO a partir de esta carpeta?" || exit
(
echo "#Creando imagen ISO..."
mkisofs -r -J -o "$*".iso "$*"
if [ "$?" = "0" ]; then
echo "#La imagen ISO a sido creada correctamente"
else
echo "#Se produjo un error al crear la ISO."
fi
)|zenity --progress --pulsate
stat -c%s filename
)
watch "ls -l fichero.iso"
ls -l fichero.iso | awk '{print $5}'
A=3; while [ $(pidof gedit) ]; do clear; let "A=$A+1"; echo "se esta procesando"; echo "$A %"; sleep 3; done; echo "terminado"
while [ $(pidof nuestro_proceso) ]
do
clear
echo "ponga aqui su texto pidiendo paciencia"
echo "$PROGRESO %"
sleep 10
# o sleep lo que quieras, sera cada cuantos segundos se refresca el porcentaje
done
echo "ponga aqui su texto de tarea terminada"
"imaginate que esta linea es el comando para crear "unaiso.iso" de los archivos A B y C... esque es un pateo copiarlo todo xD"
#tamaño total de la iso
ASIZE=$(stat -c%s A)
BSIZE=$(stat -c%s B)
CSIZE=$(stat -c%s C)
let "TSIZE=ASIZE+BSIZE+CSIZE"
#tamaño actual de la iso
# KSIZE=$(stat -c%s unaiso.iso)
#porcentaje completado:
# let "G=100*$KSIZE"
# let "PROGRESO=G/$TSIZE"
#(estos tres ultimos comandos esta comentados porque tienen que estar dentro del ciclo de while, si no, no se iran refrescando y no serviran de nada)
#ahora va lo "visible"
while [ $(pidof proceso_que_crea_la_iso) ]
do
clear
KSIZE=$(stat -c%s unaiso.iso)
let "G=100*$KSIZE"
let "PROGRESO=G/$TSIZE"
echo "su texto de espera"
echo "$PROGRESO %"
sleep 10
# si no 10, el tiempo de refresco deseado
done
echo "su texto de termino"
(no entrare mas para decir chorradas... lo prometo, pero es que casi me siento obligado a contestar por ser yo quien pedía ayuda xDD)
PORCENTAJE = (TAMAÑO ISO * 100) / TAMAÑO TOTAL
DD
#!/bin/bash
isofile=$(zenity --entry --text="Introduzca un nombre para la ISO:")
TOTAL=$(du -sb $isofile | cut -f 1)
mkisofs -r -o $isofile.iso $isofile &> /dev/null &
sleep 1
PORCENTAJE=0
(while [ $PORCENTAJE -le 99 ]; do
PARCIAL=$(du -sb $isofile.iso | cut -f 1)
PORCENTAJE=$((100*$PARCIAL/$TOTAL))
echo $PORCENTAJE
echo "# $PORCENTAJE% realizado..."
sleep 1
done) | zenity --progress --title="Creando $isofile.iso"
mkisofs -r -o test.iso test 2>&1 | etcxterm -e "mkisofs -r -o test.iso test && echo && echo Pulsa\ intro\ para\ finalizar... & read"#!/bin/bash
DIR=$(zenity --entry --text="Introduzca un nombre para la ISO:")
(mkisofs -r -o "$DIR.iso" "$DIR" 2>&1 |
while read i; do
PARCIAL=$(echo $i | grep -o [0-9]*'\.'[0-9]*)
if [ $PARCIAL ]; then
echo $PARCIAL
echo "# $PARCIAL% realizado..."
fi;
done
echo "# Finalizado." ) | zenity --progress --title="Creando "$DIR.iso""
amuchamu escribió:#!/bin/bash
DIR=$(zenity --entry --text="Introduzca un nombre para la ISO:")
(mkisofs -r -o "$DIR.iso" "$DIR" 2>&1 |
while read i; do
PARCIAL=$(echo $i | grep -o [0-9]*'\.'[0-9]*)
if [ $PARCIAL ]; then
echo $PARCIAL
echo "# $PARCIAL% realizado..."
fi;
done
echo "# Finalizado." ) | zenity --progress --title="Creando "$DIR.iso""
Read lee una línea de la entrada estándar. Redirijo la salida de error de mkisofs a la entrada estándar por lo que, en cada iteración del while, en i se almacena una línea hasta que mkisofs cierra la salida y termina el bucle.jorchube escribió:
de ahi, todo lo tengo perfectamente claro menos el "while read i"... como que i ??!! diox, me has descolocado con eso xD como se supone que funciona? de donde te lo has sacado?
le pasas la salida del mkisofs al while, bien pensado... pero esa i me ha matado xD
sacame de dudas, plis!
i=0
cat fichero_texto |
while read linea; do
i=$((i+1))
echo "Línea $i: $linea"
donei=0
while read linea; do
i=$((i+1))
echo "Línea $i: $linea"
done < fichero_textoamuchamu escribió:Read lee una línea de la entrada estándar. Redirijo la salida de error de mkisofs a la entrada estándar por lo que, en cada iteración del while, en i se almacena una línea hasta que mkisofs cierra la salida y termina el bucle.
Por ejemplo, si quieres trabajar con cada línea de un fichero de texto:i=0
cat fichero_texto |
while read linea; do
i=$((i+1))
echo "Línea $i: $linea"
done
O mejor:i=0
while read linea; do
i=$((i+1))
echo "Línea $i: $linea"
done < fichero_texto