Archivo del blog
jueves, 30 de marzo de 2017
viernes, 24 de marzo de 2017
UF2175_3 BBDD SQL e Instalación
Links
DreamSpark:
https://www.dreamspark.com/
Microsoft .NET Framework 4 Full (x86/x64):
http://www.microsoft.com/es-ES/download/details.aspx?id=3324
SQL Server® 2008:
http://www.microsoft.com/es-es/download/details.aspx?id=30438
SQL Server® 2012:
http://www.microsoft.com/es-es/download/details.aspx?id=29062
SQL Server® 2014:
http://www.microsoft.com/es-ES/download/details.aspx?id=42299
Crear una carpeta en C:/SQL SERVER y ponerla como destino de la extracción
Cuando termine de extraer cerrar el programa de instalación y ejecutar como administrador SETUP.EXE de la carpeta c:/SQL SERVER
Cuando aparezca esta ventana seleccionar TODO
Cuando pida el nombre de la instalación, seleccionar Default instance y utilizar MSSQLSERVER como nombre.
Ejecutar el programa SQL SERVER MANAGEMENT STUDIO
INSTALLATION - NEW SQL SERVER
UF2175_4 BBDD tipos de datos
Los tipos de datos Microsoft Access SQL de motor de
base de datos consisten en 13 tipos de datos principales definidos por el motor
de base de datos de Microsoft Access y varios sinónimos válidos reconocidos
para esos tipos de datos.
En la
siguiente tabla enumera los tipos de datos principales.
Tipo de
datos
|
Tamaño de
almacenamiento
|
Descripción
|
BINARIO
|
1 byte por
carácter
|
Se puede almacenar cualquier clase de datos en un
campo de este tipo. No se realiza ninguna conversión de datos (por ejemplo, a
texto). El modo en que se proporcionan los datos en un campo binario
determina la forma en la que aparecerán como resultado.
|
BIT
|
1 byte
|
Valores Sí
y No y campos que contienen uno o dos valores.
|
TINYINT
|
1 byte
|
Valor
entero entre 0 y 255.
|
MONEY
|
8 bytes
|
Entero
escalado entre
– 922.337.203.685.477,5808 y 922.337.203.685.477,5807. |
DATETIME
(Vea DOUBLE) |
8 bytes
|
Valor de
fecha u hora entre los años 100 y 9999.
|
UNIQUEIDENTIFIER
|
128 bits
|
Número de
identificación exclusivo utilizado en llamadas a procedimientos remotos.
|
REAL
|
4 bytes
|
Valor de
punto flotante de precisión simple con un intervalo de – 3,402823E38 a –
1,401298E-45 para valores negativos, 1,401298E-45 a 3,402823E38 para valores
positivos, y 0.
|
FLOAT
|
8 bytes
|
Valor de
punto flotante de precisión doble con un intervalo de – 1,79769313486232E308
a – 4,94065645841247E-324 para valores negativos, 4,94065645841247E-324 a
1,79769313486232E308 para valores positivos, y 0.
|
SMALLINT
|
2 bytes
|
Entero
corto entre – 32.768 y 32.767.
|
INTEGER
|
4 bytes
|
Entero
largo entre – 2.147.483.648 y 2.147.483.647.
|
DECIMAL
|
17 bytes
|
Tipo de
datos numérico exacto que mantiene valores desde 1028 - 1 hasta - 1028 - 1.
Puede definir la precisión (1 - 28) y la escala (0 - precisión definida). La
precisión y escala predeterminadas son 18 y 0 respectivamente.
|
TEXT
|
2 bytes
por carácter (Vea la nota)
|
De cero a
un máximo de 2,14 gigabytes.
|
IMAGE
|
Según se
requiera
|
De cero a
un máximo de 2,14 gigabytes. Se utiliza para objetos OLE.
|
CHARACTER
|
2 bytes
por carácter (Vea la nota)
|
De cero a
255 caracteres.
|
jueves, 23 de marzo de 2017
lunes, 20 de marzo de 2017
Introducción a Linux
- Módulo 1: Ubuntu en Live CD | En PDF
- Módulo 2: Instalación de Ubuntu | En PDF
- Módulo 3: Sofware libre | En PDF
- Módulo 4: El entorno de trabajo en Ubuntu | En PDF
- Módulo 5: Gestión de archivos | En PDF
- Módulo 6: Administración básica de sistema | En PDF
- Módulo 7: Aplicaciones de red | En PDF
- Módulo 8: Ofimática básica en Ubuntu | En PDF
- Módulo 9: Multimedia | En PDF
- Módulo 10: Utilidades | En PDF
- Enlaces de interés | En PDF
- Guía didáctica
- Autoría
lunes, 13 de marzo de 2017
Dale vida a tus scripts con Zenity
Hace tiempo que quiero hablaros de esta pequeña pero matona
herramienta llamada Zenity, que nos ayuda a ponerle una interfaz gráfica
a nuestro scripts mediante funciones, menús o cajas de diálogos ya preconfigurados y combinables entre sí.
En ella podemos encontrar diálogos de calendario, formularios, listas, cuadros de mensajes o alertas, selección de archivos, entrada de texto, barra de progresos, iconos de notificación, etc.
Zenity es una herramienta de GNOME que podemos descargar desde este enlace, pero que está en los repositorios de algunas distribuciones y en otras como Ubuntu ya está instalado por defecto.
Veamos algunos ejemplos de lo que podemos hacer con Zenity. Para ello abrimos nuestro terminal y tecleamos lo siguiente:





Por supuesto esto solo es el marco, lo que queremos que aparezca dentro eso ya depende de nosotros. Por ejemplo, vamos a crear en unos pocos pasos un lanzador con tres sencillas funciones, que nos abra una aplicación, que nos abra una carpeta y que nos lleve a una página web, con la ayuda del comando xdg-open. Abre un editor y escribe lo siguiente:
file=$(zenity –width=360 –height=320 –list –title “Lanzador” –column Acciones “Abrir Gedit” “Abrir carpeta Música” “Ir a LinuxZone”)
if [ “$file” = “Abrir Gedit” ]; then
/usr/bin/gedit
elif [ “$file” = “Abrir carpeta Música” ]; then
xdg-open ~/Música/
elif [ “$file” = “Ir a LinuxZone” ]; then
xdg-open http://linuxzone.es/
else
exit 0
fi
Le ponemos el nombre que queramos, seguido de la extensión .sh y le damos permisos de ejecución.

Como vemos, tan solo hay que seleccionar una de las opciones y le damos a aceptar para que la ejecute.
Pero tal vez no te guste ese dialogo y prefieras una pantalla de selección en la que puedas abrir varias opciones de golpe, pues nada más sencillo, solo tenemos que añadir otra columna y la función –checklist, que podemos ponerla marcada (TRUE) o desmarcada (FALSE) por defecto:
file=$(zenity –width=360 –height=320 –title “Lanzador” –list –column=”” –column=”Acciones” –checklist FALSE “Abrir Gedit” FALSE “Abrir carpeta Música” TRUE “Ir a LinuxZone”)
if [ “$file” = “Abrir Gedit” ]; then
/usr/bin/gedit
elif [ “$file” = “Abrir carpeta Música” ]; then
xdg-open ~/Música/
elif [ “$file” = “Ir a LinuxZone” ]; then
xdg-open http://linuxzone.es/
else
exit 0
fi

En este enlace disponen de varios ejemplos de cuadros de dialogo y muchas opciones para experimentar. Así que ya sabes, si le quieres dar mas vistosidad a tus scripts o simplemente te has animado a empezar a hacer tus “pinitos” en bash, sin duda Zenity te lo pone fácil.
Proyecto Zenity
Este es un post continuo de Un ejemplo de diálogo de zenidad completa 1 , en este post cubriremos el diálogo de zenidad para el progreso, pregunta, advertencia, escala, información de texto y lista.
¿Cómo crear el diálogo de progreso zenity?
El diálogo de progreso es hacer un seguimiento de una progresión de una rutina, puede ser cualquier cosa, digamos que quiero almacenar la lista de resultados de archivos abiertos (lsof) en una llamada de archivo lsof.txt, y utiliza el progreso zenity para realizar un seguimiento de la progresión, lo hago :
Tengo que usar tee, porque sin usar tee, zenity se despojará de mi resultado. Echa un vistazo a los ejemplos de tee para obtener más información.
¿Cómo crear diálogo de preguntas de zenidad?
¿Cómo crear un diálogo de advertencia de zenidad?
¿Cómo crear el diálogo de la escala de la zenidad?
Diálogo de escala le permite establecer un rango de número, por lo que el usuario es fuerza para elegir un número dentro del rango.
¿Cómo crear un diálogo de información de texto de zenity?
La información de texto puede ser muy útil para mostrar texto a una GUI. Utilizo de nuevo los ejemplos lsof, pero esta vez alimentar los resultados al cuadro de información de texto.
Como puede ver, puede especificar el ancho y la altura de un diálogo de zenidad. Demasiado malo, el cuadro de diálogo de información de texto no tiene opción para deshabilitar el ajuste de texto y especificó qué tipo de letra utilizar.
¿Cómo crear el diálogo de lista de zenity?
El diálogo de lista es el diálogo más flexible y he gastado bastante a veces para utilizar el uso. Como puede generar varias columnas, selección múltiple, lista de comprobación, radiolist, etc. checkout -help-list para más información.
Esto es para radiolista:
Primero debe definir columnas, luego alimentar todas las opciones de lista una por una.
Esto es para la lista de verificación:
El resultado de este tiempo será largo y probablemente más de uno, por lo que puede spefify un separador para diferenciarlos.
Ejemplo de un bucle “for”:
La solución consiste en utilizar un bucle “while” asociado al comando interno “read”.
Sin embargo, también podemos obtener el mismo resultado con un bucle “for” con la condición de que cambiemos el valor de la variable "$IFS" (Internal Field Separator, separador de campo interno) antes de ejecutar el bucle. Es lo que veremos a continuación.
Las instrucciones en línea de comandos:
o en un script “bash”:
La salida en la pantalla será (stdout):
Ejemplo:
Felizmente el bucle “for” asociado a un cambio de IFS permite conservar la estructura del documento a la salida.
¿Cómo se puede comprobar en un script de Bash si el contenido de una variable es un número?
Una posible solución sería utilizar una expresión regular como la siguiente:
Esta expresión regular tiene en cuenta los números enteros, los decimales y los números negativos. Si necesitas una comprobación más simple, puedes utilizar las siguientes expresiones regulares alternativas:
^[0-9]+$, números enteros positivos.
^[0-9]+([.][0-9]+)?$, números enteros o decimales positivos.
¿Cómo comprobar si una variable de Bash contiene una determinada cadena de texto?
Sed – Eliminar una o varias líneas de un fichero
Sintaxis
sed '{[/]<n>|<cadena>|<regex>[/]}d' <nombre_ fichero>
sed '{[/]<direccion1>[,<direccion2>][/]d' <nombre_fichero
/.../ = delimitadores
n = el número de línea
cadena = la cadena contenida en la línea
regex = expresión regular correspondiente a la ocurrencia buscada
direccion = la dirección de una línea (número u ocurrencia)
d = delete (borrar)
Ejemplos
Eliminación de la 3ra línea
sed '3d' mi_fichero.txt
Eliminación de la línea conteniendo la cadena "awk"
sed '/awk/d' mi_fichero.txt
Eliminación de la última línea
sed '$d' mi_fichero.txt
Eliminación de todas las líneas vacías
sed '/^$/d' mi_fichero.txt
sed '/./!d' mi_fichero.txt
Eliminación de la línea conteniendo una expresión regular
(aquí se elimina la línea conteniendo caracteres numéricos (al menos 1 cifra) situados al final de la línea)
sed '/[0-9/][0-9]*$/d' mi_fichero.txt
Eliminación del intervalo comprendido entre las líneas 7 y 9
sed '7,9d' mi_fichero.txt
Lo mismo pero esta vez la dirección es reemplazada por una ocurrencia
sed '/-Inicio/,/-Fin/d' mi_fichero.txt
Nota
Los ejemplos precedentes únicamente modifican la visualización del archivo (salida estándar 1 = la pantalla).
Para realizar modificaciones permanentes, en las antiguas versiones (<4) utilizar un fichero temporal, para GNU sed utilizar el parámetro "-i[sufijo]" (--in-place[=sufijo]), como en el ejemplo siguiente:
sed -i".bak" '3d' mi_fichero.txt
No mostrará el resultado en la salida estándar, y modificará el fichero original "mi_fichero.txt" eliminando la 3ra línea y creará un fichero de respaldo llamado "mi_fichero.txt.bak"
Fichero a ser utilizado en los ejemplos (mi_fichero.txt):
Eliminar caractéres
tr -d "\n" < fichero.txt > fichero2.txt
tr ',' '.' < fichero2.txt > fichero3.txt
¿Cómo dividir en bash una cadena mediante un delimitador específico?
La solución más sencilla para dividir la cadena y convertirla en un array sería el siguiente código:
IN="bla@some.com;john@home.com"
arrIN=(${IN//;/ })
Otra posible solución consiste en utilizar la variable IFS (Internal Field Separator). Al cambiar el valor de esta variable en un comando, los cambios afectan solamente a ese comando, así que no tiene efectos secundarios. El resultado sería:
IFS=';' read -ra ADDR <<< "$IN"
for i in "${ADDR[@]}"; do
# procesar "$i"
done
Una generalización de la solución anterior sería:
while IFS=';' read -ra ADDR; do
for i in "${ADDR[@]}"; do
# procesar "$i"
done
done <<< "$IN"
En ella podemos encontrar diálogos de calendario, formularios, listas, cuadros de mensajes o alertas, selección de archivos, entrada de texto, barra de progresos, iconos de notificación, etc.
Zenity es una herramienta de GNOME que podemos descargar desde este enlace, pero que está en los repositorios de algunas distribuciones y en otras como Ubuntu ya está instalado por defecto.
Veamos algunos ejemplos de lo que podemos hacer con Zenity. Para ello abrimos nuestro terminal y tecleamos lo siguiente:
zenity --calendar

zenity --password --username

zenity --scale

zenity --width=360 --height=320 --list --title "Ejemplo" --column file "Visita LinuxZone"

zenity --question --width=350 --height=120 --title "El sistema encontró un error critico" --ok-label="Definitivamente" \
--cancel-label="Sí" --text "Windows se encuentra instalado en su disco. ¿Desea desinstalarlo?" ; echo $

Por supuesto esto solo es el marco, lo que queremos que aparezca dentro eso ya depende de nosotros. Por ejemplo, vamos a crear en unos pocos pasos un lanzador con tres sencillas funciones, que nos abra una aplicación, que nos abra una carpeta y que nos lleve a una página web, con la ayuda del comando xdg-open. Abre un editor y escribe lo siguiente:
#!/bin/bash
file=$(zenity –width=360 –height=320 –list –title “Lanzador” –column Acciones “Abrir Gedit” “Abrir carpeta Música” “Ir a LinuxZone”)
if [ “$file” = “Abrir Gedit” ]; then
/usr/bin/gedit
elif [ “$file” = “Abrir carpeta Música” ]; then
xdg-open ~/Música/
elif [ “$file” = “Ir a LinuxZone” ]; then
xdg-open http://linuxzone.es/
else
exit 0
fi
Le ponemos el nombre que queramos, seguido de la extensión .sh y le damos permisos de ejecución.

Como vemos, tan solo hay que seleccionar una de las opciones y le damos a aceptar para que la ejecute.
Pero tal vez no te guste ese dialogo y prefieras una pantalla de selección en la que puedas abrir varias opciones de golpe, pues nada más sencillo, solo tenemos que añadir otra columna y la función –checklist, que podemos ponerla marcada (TRUE) o desmarcada (FALSE) por defecto:
#!/bin/bash
file=$(zenity –width=360 –height=320 –title “Lanzador” –list –column=”” –column=”Acciones” –checklist FALSE “Abrir Gedit” FALSE “Abrir carpeta Música” TRUE “Ir a LinuxZone”)
if [ “$file” = “Abrir Gedit” ]; then
/usr/bin/gedit
elif [ “$file” = “Abrir carpeta Música” ]; then
xdg-open ~/Música/
elif [ “$file” = “Ir a LinuxZone” ]; then
xdg-open http://linuxzone.es/
else
exit 0
fi

En este enlace disponen de varios ejemplos de cuadros de dialogo y muchas opciones para experimentar. Así que ya sabes, si le quieres dar mas vistosidad a tus scripts o simplemente te has animado a empezar a hacer tus “pinitos” en bash, sin duda Zenity te lo pone fácil.
Proyecto Zenity
Este es un post continuo de Un ejemplo de diálogo de zenidad completa 1 , en este post cubriremos el diálogo de zenidad para el progreso, pregunta, advertencia, escala, información de texto y lista.
¿Cómo crear el diálogo de progreso zenity?
El diálogo de progreso es hacer un seguimiento de una progresión de una rutina, puede ser cualquier cosa, digamos que quiero almacenar la lista de resultados de archivos abiertos (lsof) en una llamada de archivo lsof.txt, y utiliza el progreso zenity para realizar un seguimiento de la progresión, lo hago :
gksudo lsof | tee >(zenity --progress --pulsate) >lsof.txt
Tengo que usar tee, porque sin usar tee, zenity se despojará de mi resultado. Echa un vistazo a los ejemplos de tee para obtener más información.
¿Cómo crear diálogo de preguntas de zenidad?
zenity --question --text "Are you sure you want to shutdown?"; echo $?
Como echo $?
Devuelve el resultado 0 significa que el usuario presiona yes, 1 significa cancel. ¿Cómo crear un diálogo de advertencia de zenidad?
zenity --warning --text "This will kill, are you sure?";echo $?
¿Cómo crear el diálogo de la escala de la zenidad?
Diálogo de escala le permite establecer un rango de número, por lo que el usuario es fuerza para elegir un número dentro del rango.
ans=$(zenity --scale --text "pick a number" --min-value=2 --max-value=100 --value=2 --step 2);echo $ans
¿Cómo crear un diálogo de información de texto de zenity?
La información de texto puede ser muy útil para mostrar texto a una GUI. Utilizo de nuevo los ejemplos lsof, pero esta vez alimentar los resultados al cuadro de información de texto.
gksudo lsof | zenity --text-info --width 530
Como puede ver, puede especificar el ancho y la altura de un diálogo de zenidad. Demasiado malo, el cuadro de diálogo de información de texto no tiene opción para deshabilitar el ajuste de texto y especificó qué tipo de letra utilizar.
¿Cómo crear el diálogo de lista de zenity?
El diálogo de lista es el diálogo más flexible y he gastado bastante a veces para utilizar el uso. Como puede generar varias columnas, selección múltiple, lista de comprobación, radiolist, etc. checkout -help-list para más información.
Esto es para radiolista:
ans=$(zenity --list --text "Is linux.byexamples.com helpful?" --radiolist --column "Pick" --column "Opinion" TRUE Amazing FALSE Average FALSE "Difficult to follow" FALSE "Not helpful"); echo $ans
Primero debe definir columnas, luego alimentar todas las opciones de lista una por una.
Esto es para la lista de verificación:
ans=$(zenity --list --text "How linux.byexamples can be improved?" --checklist --column "Pick" --column "options" TRUE "More pictures" TRUE "More complete post" FALSE "Includes Installation guidelines" FALSE "Create a forum for question queries" --separator=":"); echo $ans
El resultado de este tiempo será largo y probablemente más de uno, por lo que puede spefify un separador para diferenciarlos.
Preámbulo
Uno de los errores más comunes cuando se aprende a utilizar los scripts “bash” bajo GNU/Linux para leer un archivo línea por línea, es el utilizar un bucle “for”, (for line in $(cat file.txt); do ...) lo que conduce a una evaluación de cada palabra y no de cada línea, que es lo que se busca.Ejemplo de un bucle “for”:
for line in $(cat file.txt); do echo "$line" ; done Esta Es La Línea n° 1 Esta Es La Línea n° 2 Esta [...]
La solución consiste en utilizar un bucle “while” asociado al comando interno “read”.
Sin embargo, también podemos obtener el mismo resultado con un bucle “for” con la condición de que cambiemos el valor de la variable "$IFS" (Internal Field Separator, separador de campo interno) antes de ejecutar el bucle. Es lo que veremos a continuación.
Bucle while
El bucle “while” sigue siendo el método más apropiado y simple para leer un archivo línea por línea.Sintaxis
while read linea do comando done < archivo
Ejemplo
El archivo de inicio:Esta es la línea n° 1 Esta es la línea n° 2 Esta es la línea n° 3 Esta es la línea n° 4 Esta es la línea n° 5
Las instrucciones en línea de comandos:
while read line; do echo -e "$line\n"; done < file.txt
o en un script “bash”:
#! /bin/bash while read line do echo -e "$line\n" done < file.txt
La salida en la pantalla será (stdout):
Esta es la línea n° 1 Esta es la línea n° 2 Esta es la línea n° 3 Esta es la línea n° 4 Esta es la línea n° 5
Trucos
También podemos a partir de un archivo estructurado (como una libretas de direcciones o /etc/passwd por ejemplo) obtener los valores de cada campo y asignarlos a varias variables con el comando “read”. Sin embargo hay que tener cuidado de asignar a la variable “IFS” el separador de campo adecuado (espacio por defecto).Ejemplo:
#! /bin/bash while IFS=: read user pass uid gid full home shell do echo -e "$full :\n\ Pseudo : $user\n\ UID :\t $uid\n\ GID :\t $gid\n\ Home :\t $home\n\ Shell :\t $shell\n\n" done < /etc/passwd
Complemento
while read i; do echo -e "parametro : $i"; done < <(echo -e "a\nab\nc")
Bucle for
Si bien es cierto que el bucle “while” es el método más simple, sin embargo este tiene un gran inconveniente, el de eliminar el formateado de las líneas y especialmente los espacios y tabulaciones.Felizmente el bucle “for” asociado a un cambio de IFS permite conservar la estructura del documento a la salida.
Sintaxis
oldIFS=$IFS # conserva el separador de campo IFS=$'\n' # nuevo separador de campo, el caracter fin de línea for línea in $(cat archivo) do comando done IFS=$old_IFS # restablece el separador de campo predeterminado
Consulta también
- Cómo leer un archivo línea por línea
- Leer textos con bash
- Bash recorrer fichero linea a linea
- Grabación - Grabar o leer un archivo .img / .ccd / .sub
- Grabar o leer un archivo MDF o MDS
- SVG: Cómo leer un archivo en formato SVG
- Leer un archivo Publisher (.pub) sin Publisher
- Códec para reproducir formato AVI [Resuelto] (Resuelto)
Una posible solución sería utilizar una expresión regular como la siguiente:
Esta expresión regular tiene en cuenta los números enteros, los decimales y los números negativos. Si necesitas una comprobación más simple, puedes utilizar las siguientes expresiones regulares alternativas:
^[0-9]+$, números enteros positivos.
^[0-9]+([.][0-9]+)?$, números enteros o decimales positivos.
¿Cómo comprobar si una variable de Bash contiene una determinada cadena de texto?
Sed – Eliminar una o varias líneas de un fichero
Sintaxis
sed '{[/]<n>|<cadena>|<regex>[/]}d' <nombre_ fichero>
sed '{[/]<direccion1>[,<direccion2>][/]d' <nombre_fichero
/.../ = delimitadores
n = el número de línea
cadena = la cadena contenida en la línea
regex = expresión regular correspondiente a la ocurrencia buscada
direccion = la dirección de una línea (número u ocurrencia)
d = delete (borrar)
Ejemplos
Eliminación de la 3ra línea
sed '3d' mi_fichero.txt
Eliminación de la línea conteniendo la cadena "awk"
sed '/awk/d' mi_fichero.txt
Eliminación de la última línea
sed '$d' mi_fichero.txt
Eliminación de todas las líneas vacías
sed '/^$/d' mi_fichero.txt
sed '/./!d' mi_fichero.txt
Eliminación de la línea conteniendo una expresión regular
(aquí se elimina la línea conteniendo caracteres numéricos (al menos 1 cifra) situados al final de la línea)
sed '/[0-9/][0-9]*$/d' mi_fichero.txt
Eliminación del intervalo comprendido entre las líneas 7 y 9
sed '7,9d' mi_fichero.txt
Lo mismo pero esta vez la dirección es reemplazada por una ocurrencia
sed '/-Inicio/,/-Fin/d' mi_fichero.txt
Nota
Los ejemplos precedentes únicamente modifican la visualización del archivo (salida estándar 1 = la pantalla).
Para realizar modificaciones permanentes, en las antiguas versiones (<4) utilizar un fichero temporal, para GNU sed utilizar el parámetro "-i[sufijo]" (--in-place[=sufijo]), como en el ejemplo siguiente:
sed -i".bak" '3d' mi_fichero.txt
No mostrará el resultado en la salida estándar, y modificará el fichero original "mi_fichero.txt" eliminando la 3ra línea y creará un fichero de respaldo llamado "mi_fichero.txt.bak"
Fichero a ser utilizado en los ejemplos (mi_fichero.txt):
Eliminar caractéres
tr -d "\n" < fichero.txt > fichero2.txt
tr ',' '.' < fichero2.txt > fichero3.txt
¿Cómo dividir en bash una cadena mediante un delimitador específico?
La solución más sencilla para dividir la cadena y convertirla en un array sería el siguiente código:
IN="bla@some.com;john@home.com"
arrIN=(${IN//;/ })
Otra posible solución consiste en utilizar la variable IFS (Internal Field Separator). Al cambiar el valor de esta variable en un comando, los cambios afectan solamente a ese comando, así que no tiene efectos secundarios. El resultado sería:
IFS=';' read -ra ADDR <<< "$IN"
for i in "${ADDR[@]}"; do
# procesar "$i"
done
Una generalización de la solución anterior sería:
while IFS=';' read -ra ADDR; do
for i in "${ADDR[@]}"; do
# procesar "$i"
done
done <<< "$IN"
UF1467 : Modulo de office
Lunes 13/3/17
Word:
- Zona superior:
- pestañas
- Zona lateral superior:
- botón activar/desactivar regla
- Zona inferior derecha:
- zoom
Menu Archivo: permite abrir, guardar, guardar como (dentro de guardar como tipo podemos elegir word97/2003, pdf, ...)
Fuente (por orden)
- PRIMERA FILA
- Tipos de letra
- tamaños
- Aumentar letra
- Disminuir letra
- Cambiar mayúsculas, minúsculas, ...
- SEGUNDA FILA
- Negrita (CTRL+N)
- Cursiva (CTRL+K)
- Subrayado (CTRL+S)
- Tachado
- Subindice
- Superindice
- Titulos con estilo automático
- Fondo de letra
- Color de letra
Ejercicio:
- EJSJR-017 Fuentes
Ejercicios extra:
- EJWOR-001
- EJWOR-008
Copiar formato
- SELECCIONAR
- BOTÓN COPIAR FORMATO
- PASAR BOTÓN COPIAR FORMATO POR EL NUEVO TEXTO
Para dejar fijo el botón de copiar formato
- Doble click
Para quitarlo
- ESC
- Escribir palabra a buscar
- Escribir palabra reemplazar con
- Pulsar reemplazar o reemplazar todos
- Escribir palabra a buscar
- Escribir palabra reemplazar con
- Pulsamos formato
- Elegir formato
- Pulsar reemplazar o reemplazar todos
- Me coloco en buscar
- Pulso especial
- Elegir carácter especial
- Me coloco en reemplazar
- Escribir palabra o caracter por lo que quiero reemplazar
- Pulsar reemplazar o reemplazar todos
Martes 14/3/17
Word:
Formato párrafo:
- Espaciados entre caracteres
- Control de viudas y huérfanas, ...
Ejercicio:
- EJWOR-068 MENU DEL DIA
Ejercicios extra:
- EJWOR-027 INMOBILIARIA EL GLOBO
- EJWOR-049 EL ORDENADOR PERSONAL
Numeración y viñetas
- Aumentar nivel, tecla TAB
- Disminuir nivel, tecla Mayus+TAB
Ejercicios:
- EJWOR-052 EL ORDENADOR VIÑETAS
- EJWOR-055 SANGRIAS, NUMERACION Y VIÑETAS
Ejercicios extra:
- EJWOR-034 NUMERACION Y VIÑETAS
- EJWOR-035 NUMERACION Y VIÑETAS 1
Bordes y sombreado
Ejercicios:
- EJWOR-191 bordes y sombreado de párrafos
- EJWOR-099 Oferta Fin de Temporada
- EJWOR-011 Oferta fruteria
Ejercicios extra:
- EJWOR-164 formato de carácter
- EJWOR-165 formato de párrafo
Tabuladores
Ejercicios:
- EJWOR-091 DUREZA DE LOS MINERALES
- EJWOR-030 TABULACIONES VUELTA CICLISTA
Ejercicios extra:
- EJWOR-111 CALENDARIO
- EJWOR-109 TRANSFORMAR EN
- EJWOR-016 CONTRATO DE TRABAJO TEMPORAL
Miércoles 15/3/17
Word:
Tablas
Ejercicios:
- EJSJR-009 HORARIO
Ejercicios extra:
- EJSJR-051 SOPA DE LETRAS
- EJSJR-052 TIPOS DE ROCAS
- EJWOR-062 EL SISTEMA SOLAR
Configurar página, orientación vertical-horizontal, tamaño, márgenes, saltos de página
Impresión y Encabezados y pies de página
Ejercicio:
- EJWOR-166 configurar página
- EJWOR-172 Encabezado y pie noticia curiosa
Ejercicios extra:
- EJWOR-057 TABLA HORIZONTAL
- EJSJR-007 EL LEON Y EL COCODRILO
- EJWOR-140 Adivinanzas
- EJWOR-173 Encabezado y pie albert einstein
Imágenes, formas, SmartArt y cuadros de texto
Insertar una imagen:
- Insertar
- Imágenes
Insertar una imagen online:
- Insertar
- Imagen online
Insertar una forma:
- Insertar
- Formas
Insertar un SmartArt
- Insertar
- SmartArt
Insertar un Cuadro de texto
- Insertar
- Cuadro de texto
- Escribir texto
- Moverlo a la posición correcta
Columnas y letra capital
Ejercicios:
- EJWOR-033 Redes locales
- EJWOR-168 imágenes
Ejercicios extra:
- EJWOR-098 Modelos de PC
- EJWOR-187 Clasificacion F1
- EJWOR-119 MENÚ POR LOS AIRES
Estilos
Crear un índice con estilos
Jueves 16/3/17
Excel:
- Introducción de datos
- Formatos
- Fórmulas
Ejercicios:
- EJEXC-001 Olimpiadas de Londres.doc
- EJEXC-003 Tablas de descuentos.doc
- EJEXC-004 INSERTAR Y ELIMINAR.doc
- EJEXC-008 TABLA DE MULTIPLICAR.doc
- EJEXC-136 PREVISION VENTAS CONECTORES DE RATON.doc
Ejercicios extra:
- EJEXC-009 DESVIACIÓN DE VENTAS.doc
- EJEXC-007 RECIBO COMPAÑIA ELÉCTRICA.doc
- EJEXC-011 OPERACIONES ARITMÉTICAS BÁSICAS.doc
- EJEXC-020 CONTABILIDAD DOMÉSTICA.doc
Referencias
Ejercicios:
- EJEXC-010 TARIFAS REFERENCIAS ABSOLUTAS.doc
- EJEXC-016 FORMATO DE FACTURA.doc
- EJEXC-053 COLEGIO.doc
Ejercicios extra:
- EJEXC-135 REPARACIONES ELECSA.doc
- EJEXC-017 FACTURA DE MONTAJE DE SILLAS.doc
- EJEXC-018 FACTURA TALLER DE NEUMÁTICOS.doc
- EJEXC-005 CENTROS COMERCIALES Rev1.doc
Viernes 17/3/17
Excel:
Uso varias hojas
Ejercicios
- EJEXC-206 REFERENCIAS RELATIVAS, ABSOLUTAS Y A OTRAS HOJAS Notas de clase.docx
- EJEXC-134 VENTAS ENERO FEBRERO MARZO.doc
Ejercicios extra:
- EJEXC-013 COMUNIDADES AUTÓNOMAS.doc
Funciones
Ejercicios:
- EJEXC-002 Gastos de personal.doc
- EJEXC-006 EQUIPO DE BALONCESTO.doc
- EJEXC-019 FUNCIÓN LÓGICA SI.doc
Ejercicios extra:
- EJEXC-024 CALCULO LETRA DNI Rev 1.doc
- EJEXC-118 Notas de los alumnos.doc
- EJEXC-171 funcion SI FOTOCOPIAS.doc
- EJEXC-172 EJERCICIO COMPLETO FUNCIONES.doc
- EJEXC-177 buscar, buscarv, y buscarh Rev1.doc
- EJEXC-179 Funciones.doc
- EJEXC-203 FUNCIÓN SI ANIDADA Rev1.doc
- EJEXC-152 COMPONENTES GÁLVEZ.doc
- EJEXC-025 TU TRABAJO ETT Rev1.doc
Lunes 18/3/17
Excel:
- Gráficos
Ejercicios:
- EJEXC-012 ELECCIONES MUNICIPALES.doc
- EJEXC-014 AUDIENCIAS.doc
Ejercicios extra:
- EJEXC-015 PROGRAMAS MAS VISTOS.doc
- EJEXC-021 GRÁFICO COMPARATIVO DE VENTAS.doc
- EJEXC-022 GASTOS MENSUALES rev1.doc
- EJEXC-023 CONTABILIDAD GASTOS MENSUALES.doc
Filtros, subtotales, tablas dinámicas
Ejercicios:
- EJEXC-032 FILTRAR Y ORDENAR.doc
- EJEXC-154 BASE DE DATOS PRODUCTOS.doc
Ejercicios extra:
- EJEXC-033 CREACIÓN DE INFORMES PERSONALIZADOS CON TABLAS DINÁMICAS.doc
- EJEXC-033 TABLAS DINÁMICAS nuevo.doc
- EJEXC-034 SUBTOTALES 1.doc
- EJEXC-110 Filtros, Subtotales y Funciones Rev3.doc
- EJEXC-155 BASE DE DATOS MATRICULADOS.doc
- EJEXC-165 FILTROS,SUBTOTALES Y TABLAS DINAMICAS.doc
- EJEXC-166 FILTROS,SUBTOTALES Y TABLAS DINAMICAS.doc
- EJEXC-174 tablas dinamicas.doc
- EJEXC-102 copiadoras, fax e impresoras.doc
Cómo crear y utilizar las listas personalizadas en Excel
Suscribirse a:
Entradas (Atom)