Subsections

Introducción

El sistema operativo Linux

Todo en Linux es un archivo o un proceso. Un proceso es un ejecutable que se identifica con un PID (process identifier) único. Un archivo es una colección de datos en una variedad de formas (como texto).
Linux tiene un GUI (Graphical User Interface) similar a otros sistemas operativos, no obstante, algunas operaciones no tienen interfaz gráfica, por lo cual se necesita conocer los detalles de bash para acoplar esas operaciones en la manipulación de datos. Para ello, trabajamos en un terminal.
En alguna parte del menú (probablemente aplicaciones) se puede encontrar el terminal. Tome unos minutos para familiarizarse con el menú, y poner el terminal como un ícono de escritorio.

Figure: Listando archivos
Image ls

Hacer una lista de archivos

El comando ls presenta los contenidos del directorio en que usted esta trabajando. Simplemente teclee ls en el terminal. También prueba el comando ls -l (lista formato largo); este tiene más información, por ejemplo, los permisos, el dueño, tamaño y la fecha de la última modificación.
Prueba el comando ls -a (list all). Con esto se obtiene información sobre los archivos/directorios escondidos también. ¿ Cómo se esconde un archivo?

Creando directorios y cambiando entre ellos

El comando cd le permite cambiar de directorio. Cuando se pone cd sólo en el terminal, se va al directorio $ HOME. Es posible verificar dónde estas exáctamente con el comando pwd, por ejemplo:

Figure: Mostrando ruta actual
Image pwd

Ahora vamos a crear un directorio que se llama bin (revisen que estan en su directorio $HOME primero con pwd):

 mkdir bin

donde literalmente mkdir significa make directory.
Hace una listado ls para corroborar que este directorio ahora existe. Podemos ir al directorio bin con el comando cd bin.
Una lista aquí va a mostrar que por ahora este directorio esta vacío. Use pwd para notar donde esta el directorio bin en relación a tu espacio de trabajo $HOME.
El comando cd .. te lleva a un directorio más arriva en jerarquía( organización de archivos del sistema Linux), en este caso el espacio $HOME. Notar que cd también sirve para ir al $HOME desde cualquier lugar en su computadora.
También podemos crear una jerarquía de directorios añadiendo la opción -p al comando mkdir. Por ejemplo, creemos el árbol Topografia/Chile/Concepcion

 mkdir -p Topografia/Chile/Concepcion

La magia del "TAB" y wildcards(*)

Creen un directorio con un nombre muy largo, por ejemplo:

  mkdir directorio_con_un_nombre_muy_largo

Para cambiar a este directorio no es necesario poner su nombre completo. Si despúes de poner las primeras letras del directorio, si este es único, tocando la llave TAB completará la frase. De otra manera, la estrella (*) puede completar frases únicas también.
Para borrar un archivo hay que usar el comando rm , para un directorio rm -r, por ejemplo:

 rm -r directorio_con_un_nombre_muy_largo

Figure: Usando comandos unix
Image wildcard

Copiando y moviendo archivos

Primeramente vamos a bajar dos archivos desde esta página (http://www.mttmllr.com/GMT/ejemplos/) que nos serán útiles:

Probablemente estos archivos se descargarán directamente al escritorio o al $HOME, para moverlos al directorio bin use :
 mv Escritorio/Calday bin/

Nota:
Para copiar archivos se usa cp en lugar de mv

Ejecutables y permisos

Si tiene Calday, Julday en su directorio $ \sim$bin ($ \sim$ significa tu espacio $HOME), revisemos si podemos ejecutarlos. Primeramente vamos al directorio bin, luego hacemos una lista en formato largo:

 cd ~/bin
ls -l

Figure: Cambiando de directorios
Image ls-l

Hay que fijarse en los primeros 10 carácteres

En donde,

Unos ejemplos :

a)
-rwxrwxrwx: Un archivo que todos pueden leer, cambiar/borrar, ejecutar
b)
-rw- - - - - - -: Un archivo que solamente puede ser leido y cambiado por el dueño de la cuenta. Por ejemplo, algo de email

Para que los archivos Julday, Calday puedan ser ejecutables deben tener permiso de ejecución. Hacemos esto con las siguientes instrucciones :

Note que con chmod se usa + para dar los permisos, y - para quitar permisos.
Ahora hagan una lista a ver si esos programas son ejecutables, si lo son, están listos para usarse.

Variables en Bash

Existen varias variables en el terminal. Se puede usar el comando echo para pedir sus valores. Por ejemplo:

 echo $USER
echo $HOME
echo $PATH

El valor del $PATH especifica los directorios donde existen ejecutables, comandos y programas. Volveremos a eso en la próxima sección,ya que deseamos que nuestros scripts, y GMT esten dentro de este $PATH.

Espacio en el disco

Para revisar el espacio en el disco, use:

 df -k

Espacio en uso de archivos y directorios

Para comprobar el tamaño de un archivo o directorio usamos el comando du, donde para un directorio usamos la opción -s. La opción h es para ver el tamaño en megabytes.
 du -sh  directorio

Archivo de datos

global_seismicity_feb27-apr19_2010.txt

Este archivo contiene la sismisidad global desde el 27 de febrero al 19 de abril del año 2010. Creen un directorio de trabajo para este curso y muevan este archivo de sismisidad allá. Exploren este archivo, lo pueden hacer con gedit o cualquier editor de texto.

matt 2014-03-19