Archivos de ‘bash‘
Mi conky
Esta son las configuraciones de mi conky, ya que @hbautista me dijo que si se lo pasaba, y se me olvido, y pues con esto de la universidad casi no tengo mucho tiempo.
[flickr: http://www.flickr.com.../]
son dos conquis, que se corren con un archivo en Bash, ejecutan a los dos conkys que tengo ocultos .conkyrc1 y .conkyrc2, este archivo en Bash, se ejecuta al arrancar, pues se guarda el código de abajo en un archivo “conkycorrer” o como quieras recuerda darle permisos de ejecución (chmod +x archivo)
conky -c ./.conkyrc1 -d && conky -c ./.conkyrc2 -d
Puedes usar el comando sleep, para que no cargue y se trabe…
Aquí están los conkys.
Link descarga.
GtkDialog
Continua de GtkDiialog-IV.
Siguiendo con las ventanitas (yo les digo así), como todás comienza por <windows> y dentro de ella va un </frame>:
<window>
<vbox>
<frame ventanita><text>
<label> es como hacer un frame </label>
</text></frame>
<hbox>
<button ok></button>
<button cancel></button>
</hbox>
</vbox>
</window>
[script ventanitaframe]
Hay muchos tipos de atibutos, como posición, tipo de dialogo(mensaje, alerta..):
[script ventanitaframe1]
-
#! /bin/bash
-
-
export DIALOG='
-
<window title="EJEMPLO" icon-name="gtk-dialog-warning">
-
<vbox>
-
<frame Description>
-
<text>
-
<label> Con el atributo icon-name="gtk-dialog-warning" </label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
-
-
export DIALOG='
-
<window title="EJEMPLO" decorated="false">
-
<vbox>
-
<frame Description>
-
<text>
-
<label>Con el atributo decorated=false</label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
-
-
export DIALOG='
-
<window title="Ejemplo" resizable="false">
-
<vbox>
-
<frame Description>
-
<text>
-
<label>Con el atributo resizable=false</label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
-
-
export DIALOG='
-
<window title="Ejemplo centrado" window_position="1">
-
<vbox>
-
<frame Description>
-
<text>
-
<label> la ventana centrada window_position=1 (GTK_WIN_POS_CENTER)</label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
-
-
export DIALOG='
-
<window title="Ejemplo mouse" window_position="2">
-
<vbox>
-
<frame Description>
-
<text>
-
<label> Ejemplo donde de donde dse ecunetre el puntero window_position=2 (GTK_WIN_POS_MOUSE)</label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
-
-
export DIALOG='
-
<window title="Ejemplo" skip_taskbar_hint="true">
-
<vbox>
-
<frame Description>
-
<text>
-
<label>atributo skip_taskbar_hint=true</label>
-
</text>
-
</frame>
-
<hbox>
-
<button ok></button>
-
<button cancel></button>
-
</hbox>
-
</vbox>
-
</window>
-
'
-
gtkdialog --program=DIALOG
Mientras esa serían las ventanitas, para jugar un rato, un post más y se termina mi odisea de aprender bien el gtk-dialog...
Una tarea??
Hoy estaba en mi casa como cualquier día tomando una tecate y una amiga me manda un mensaje, me dice que si le ayudaba con una tarea en bash :O, sobre altas de usuarios y bajas, pues como me soy buena onda le ayude, ya con unas chelitas arriba esto salio:
-
#!/bin/bash
-
-
# Primera bienvenida al sistema
-
clear
-
echo ' Bienvenido al sistema'
-
echo ''
-
echo ''
-
echo ' Porfavor elija el menu '
-
-
# usando select para los menus
-
OPCIONES="Agregar Borrar Salir"
-
-
select opt in $OPCIONES; do
-
#empezamos el select
-
if [ "$opt" = "Salir" ]; then
-
echo "Gracias por usar el sistema"
-
-
exit
-
elif [ "$opt" = "Agregar" ]; then
-
echo " Agregar usuarios"
-
echo " "
-
echo " ¿Cual es tu nombre? "
-
read "nombre"
-
echo "¿cual es tu nick?"
-
read "nick"
-
echo "¿tu contraseña?"
-
read "pass"
-
clear
-
echo Hola $nombre te has registrado con el usuario $nick y contraseña $pass.
-
#creamos un archivo con touch, con el nombre del user
-
touch $nick
-
echo " Usuario: $nombre $nick $pass "> $nick
-
echo " -------------------"
-
echo " ------ Menu -------"
-
echo " -------------------"
-
echo "1.- Agregar usuarios"
-
echo "2.- Borrar"
-
echo "3.- salir "
-
echo "precione la tecla que desea del menu"
-
-
elif [ "$opt" = "Borrar" ]; then
-
clear
-
echo "Bienvenido :-)"
-
echo "Que usuario desea borrar"
-
echo " ------------ "
-
#enlistamos los arhivos creados con touch
-
ls -l
-
echo " ------------ "
-
echo "escriba el nick del usuario a borrar"
-
# aqui escrbimos el nick mucho cuidado con borrar a un.sh
-
read userborrar
-
echo "Esta apunto de boorar a $userborrar "
-
#borramos el usuario con el poderoso rm rf, mucho cuidado
-
rm -rf $userborrar
-
echo "usuario borrado.."
-
echo " -------------------"
-
echo " ------ Menu -------"
-
echo " -------------------"
-
echo "1.- Agregar usuarios"
-
echo "2.- Borrar"
-
echo "3.- salir "
-
echo "precione la tecla que desea del menu"
-
else
-
clear
-
echo opción errónea, solo numeros
-
fi
-
done
GtkDialog
continuación de: GtkDialog-III.
Creo que es hora de ver como hacer unos menús, siguiendo con la estructura, <menubar></menubar> definen la barra de menú, dentro de ella debe de contener <menuitem></menuitem> el cual muestra los menú.
<menubar>
<menu>
<menuitem>
<label>gtk-open</label>
</menuitem>
<menuitem>
<label>gtk-save</label>
</menuitem>
<menuitem>
<label>gtk-quit</label>
<action>EXIT="quit"</action>
</menuitem>
<label>File</label>
</menu>
</menubar>
[Código: Menu.sh ]
En la barra de menu podemos usar iconos, como el ejemplo que puse en la imagen, con el atributo icon="gtk-icono a usar", y crear etiquetas alado de los iconos, para usar los predifinidos sin etiquetas (labels), podemos usar stock="gtk-open", lo cual pondría el icono con su nombre pero, esto ya depende del sistema, al poner el icono gtk-open y tienes tu distribución en español, lo leera como "abierto", podemos decir los predifinidos :D.. también tenemos una opción de separar los menus con <separator></separator>. Esté es un ejemplo.
[Código: MenuIcon.sh]
En el menú, open podemos usar chooser:
[Código: choo.sh]
Algo parecido a un menú, es el noteBook, esto en lo personal me gusto mucho:
[Código: notebook.sh]
Para crear las pestañas, se usa <notebook></notebook>, dentro de ella los atributos serían los menus, por así decirlo <notebook labels="Checkbox|Radiobutton|Tree">. dentro de ello se pone el contenido de cada pestaña, ya sea abriendo un nuevo <vbox> o como en el caso de Tree, un nuevo <tree>.
Solo es cosa de idear como queremos el menú, y poner a trabajar nuestras mentes maleadas :D...
Creando siguiente tema, creo que serán sobre ventanas xD.
GtkDialog
Continuación de :
gtkDialog-II
Vimos los botones, sencillos entonces nos damos una idea de como funciona esto, lo que se puede hacer con los atributos, hay más widgets todavía, como los Checkbox, esto es sencillo:
<checkbox> <label>Esto es un CheckBox</label> <variable>CAJITA1</variable> <action>echo checkbox esta en $CHECKBOX marcado</action>> </checkbox>
Sencillo como crear checkbox, tiene muchos atributos como marcar, habilitar, deshabilitar, hacer combinaciones:
[code: check.sh]
No solo cajitas podemos hacer también podemos usar un radio button, de la misma forma que checkbox :

[code: checkb.sh]
Teniendo en cuenta esto, también salen los combos, las cajitas de combox, aquí tiene un nombre chistoso combobox:

[code: combobox.sh]
Todo esto me hace recordar a mi querido zenity, en el bash, a lo que mis recuerdos me llevan a que aquí también tenemos una barra de progreso, un poco más divertida:
<progressbar>
<label>algo de texto</label>
<input>for i in $(seq 0 10 100); do echo $i; sleep 0.3; done</input>
<action type="exit">Listo</action>
</progressbar>
Podemos ver que no tiene nada diferente a lo demás, en el input podemos ejecutar el tiempo y con un simple ciclo for, Son determinados espacios en un tiempo..

[code: progresobar.sh]
En zenity, es un poco más facil y solo consta de :
zenity --progress --auto-close
La barra de Progreso, también puede dividirse por partes e imprimir algunas frases dentro de la barra, como el ejemplo del for simple que estaba arriba, solo que aquí creamos una Función, sip una función para agrupar trozos de código de una manera más lógica:
[code: progresobarter.sh]
Hagamos lago más rapido y que se sobreponga, en esté caso al comando date, que muestra la fecha..o el comando que quieras.. como dicen los españoles, "os dejo a vuestra imaginación":

[code: progresobartest.sh ]
SIGUIENTE POST GTDIALOG IV
GtkDialog
Continuación de :
INTRO GTKDIALOG
Siguiendo con gtkDialog, ya hemos aprendido lo básico, como llamarlo, ejecutarlo y hasta su integración con en lenguaje C, ahora veremos los widgets, ya que Gtkdialog es una lenguaje de descripción XML, es capas de denotar capaz de denotar cualquier complejo de dialogo que contienen las cajas y los widgets estos son los botones, campos de entradas, listas y otras cosas, que veremos, como la mayoría de los comandos esté tiene atributos (nota Acciones:: ), creo que es esté caso sería como en la mayoría de los lenguajes jeje, pero parecen más comandos, se agrupa junto con los contenedores (nota Contenedores::), de cabeza acostados como quieran, cajas todo debe estar en su respectivo contenedor, los widgets no pueden estar solo es peligroso para el exterior, o algo así dice el tuto jaja.
Bueno en los ejemplos anteriores solo vimos como se creaban botones con los labels también podemos poner algo de texto, claro es XML, negritas, cursivas :-)..

[code: texo_atributos.sh]
Aquí no hay mucho que explicar ya que es bastante explicito:
<text atributo atributo2> <label>"<b>Negritas</b> texto"</label> </text>
Archivos de entrada:
También tenemos esto, se define con el,<input file></input>, y puede ser declarado dentro de su contenedor que tipo de archivo abriremos ya sea una imagen o archivo hasta un comando ¡¡ (Todo lo que se puede hacer wowo):
[code: input.sh]
Es sencillo aprendiendo como es la estructura:
<frame Aqui Pondríamos el titulo del frame>
<text> <-- Que es lo que queremos en esté caso un archivo que contiene texto o img (pixmap)
<label>TEXTO ESTATICO OHO OHHH</label> <-- por si las dudas
<input file>/tmp/log</input> <-- abrimos Archivo o comando
</text>
</frame>
Los botones, son simplemente <button ok><action>echo Presionaste Ok</action></button>, algunos botones predefinidos son:
- '<button ok></button>'
- '<button cancel></button>'
- '<button help></button>'
- '<button yes></button>'
- '<button no></button>'
[code: button.sh]














