Sie sind auf Seite 1von 6

Taller GNU Linux

Consola de GNU Linux


FLISOL 2015 OSORNO Noviembre
David Pineda Osorio

Introduccin
Este taller tiene como objetivo conocer las principales herramientas que entrega un sistema
GNU Linux para controlarlo y trabajar productivamente con l.
Existe en el mundo de la informtica una amplia gama de opciones para resolver un problema.
Sin embargo siempre es necesario considerar el tiempo disponible y el modo de usar los recursos.
Puedes usar un martillo para clavar un tornillo pero siempre es mejor un atornillador, no? Lo mismo
sucede ac.
Usemos entonces las herramientas disponibles. En el mundo GNU Linux tenemos la tremenda
posibilidad de acceder a las funcionalidades que hacen posible la interaccin visual en una interfaz.
Podemos hacer prcticamente lo mismo sin mover el mouse.
Lo importante es la posibilidad de lograr operaciones mltiples sobre una cantidad numerosa de
elementos en una sola secuencia de mdulos, lo que se traduce en una reduccin de tiempo
considerable versus el trabajo de la misma informacin con distintos softwares grficos.
Esto se traduce en la facultad de implementar soluciones informticas no solo en el campo de la
administracin de sistemas computacionales sino tambin en la operacin y anlisis de datos para las
ciencias. El nivel al que se trabaja la consola de GNU Linux en la administracin y manipulacin de
directorios, documentos y textos. Lo que cubre una amplia gama de posibilidades.
Otro factor de importancia es que el acceso a esta tecnologa no tiene barreras de entrada, basta
tener un computador con GNU Linux instalado. El tiempo de operacin depender del nivel de
tecnologa hardware con que se trabaje, los servidores de ALMA o Google trabajan con GNU Linux. Es
Software Libre!

BASH: Sistema de programacin Base


La consola, terminal o shell es la base de operaciones con que podremos trabajar, nos permitir

conocer los directorios, ficheros, dispositivos; controlarlos y manipularlos: lo que es maravilloso! A


nivel de programacin podemos ejecutar comandos sobre la misma terminal, definir variables y
constantes de sistema. Podemos tambin escribir programas en la mayora de los lenguajes y
compilarlos, tanto perl, python, c o c++ pueden ser los siguientes niveles de trabajo a los que podras
acceder.

Estructura de Sistema
Existe un comando 'tree' que se debe instalar, nos permite conocer la estructura de carpetas y archivos a
partir desde el punto en que estamos.

Otras formas de mostrar el directorio 'man tree' nos dice como hacerlo! Si solo queremos ver los
directorios:

Otro elemento importante de cada funcionalidad es conocer la versin que estamos utilizando.
Usualmente puede ser aadiendo -v o version a la operacin.
Queremos conocer la versin de Bash con que trabajaremos:

Sintxis y carcteres de operacin en BASH


Cada operacin sobre un comando puede ser encadenada a otra serie de comandos, nos permite
entonces trabajar la informacin con mltiples comandos en cascada, extraer informacin de un
archivo, generar nuevos archivos.
Lo que nos ayudar a hacer esta magia son los caracteres especiales:

'|': pleca o pipa, entuba un proceso y lo opera con el siguiente comando

'<': extrae informacin de un archivo

'>': enva la salida a un archivo, borrando lo que haba anteriormente

'>>': aade nuevas lneas a archivo, sin borrar lo anterior

Estructuras de control:

if
if [[ string =~ regex]] ; then
command
command
fi

for
for i in "$@"
do
#echo $i
case "$i" in
-n=*)
numero="${i#*=}"
;;
-e=*)
encargado="${i#*=}"
#echo "hola tioi e"
;;
-o=*)
organizacion="${i#*=}"
#echo "hola tio o"
;;
-m=*)
email="${i#*=}"
#echo "Hola tio M"
;;
--default)
email="dpineda@ug.uchile.cl"
encargado="David Pineda"
organizacion="Solo pruebas"
esac
done

while
while [ condition ]
do
command1
command2
command3
done

Herramientas
Qu hace?
Cd

Ingresa a un directorio (o con 'cd ..' sale de l)

Ls

Lista los archivos y directorios en el mismo nivel

Date

Trabaja con fechas y marcas de tiempo

Sed

Interviene cadenas de texto en base a una expresin regular

Grep Realiza bsquedas de textos o expresiones regulares en campos de texto (archivos)


Cat

Muestra archivos de texto

Xargs Permite administrar entradas desde un pipe


Nano Editor de textos bsico
Echo Imprime cadenas de texto
Awk

Lenguaje muy til para el procesamiento y generacin de reportes

Sort

Ordena listas

cp

copiar de un punto a otro

mv

mover de un punto a otro

find

buscar archivos a travs de directorios

Arreglos y Listas
Los arreglos o listas son estructuras de informacin que permiten manipular grandes calntidades
de datos ya que tienen como principal caracterstica un identificador de posicin.
Por ejemplo si
lista = ['a', 'b', 'c']
lista[0] me entrega el valor 'a'
En bash, hay algunas diferencias:
ARRAY=(one two three)
echo ${ARRAY[0]}
Ejercicio, que pasa ejecutando lo siguiente:
${arr[*]}
array
${!arr[*]}
the array
${#arr[*]}
array
${#arr[0]}

# All of the items in the


# All of the indexes in
# Number of items in the
# Length of item zero

Ejercicios: Crear un Script [Guin]


1. Crear un script que haga lo siguiente:

Seleccionar todos los archivos que tengan la palabra 'enjoy' en todo el rbol de directorio

Colocar los archivos en una carpeta 'enjoy'

Generar un reporte con el nombre del archivo, origen y cantidad de palabras

guardar reporte con nombre 'reporte_enjoy.dat'

2. Se tiene un archivo con una lista de personas y da de nacimiento(d/m/ao). Crear


un script que:

Cambie la fecha d/m/Y a da NRO de mes, ao

Genere la misma lista ordenada por fecha de nacimiento

Ms Recursos!
http://stackoverflow.com
http://www.linuxjournal.com/content/bash-arrays
https://it-ebooks.info
Preprocesamiento de datos: https://www.ucursos.cl/uchile/2008/0/COMCLUCH/1/material_docente/bajar?id_material=1017257

Das könnte Ihnen auch gefallen