Está en la página 1de 48

Programación

Linux

Prof. Gonzalo Müller


gmullerb@mail.com
Facultad de Ingeniería
Universidad Central de Venezuela

Programación – Prof. Gonzalo Müller – Clase 2 – GM - 1


Prerrequisito

Mínimo clase 6.

Programación – Prof. Gonzalo Müller – Clase 2 – GM - 2


Linux
 Linux: Es un sistema operativo desarrollado
originalmente por Linus Torvalds en 1991.

 Es un sistema multiusuario y multitareas.


 Desarrollado en C.
 Gratis.(free) → Popular
 Código Abierto.(freedom) → Poderoso

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 3


Linux
 Uso de Linux: Linux puede trabajar como servidor o
como estación de servicio.
 Servidor: FTP, HTTP, SQL, Firewall, Samba,…
 Estación de Servicio: Programación, Gráficas,
Documentos, …

Linux

Estación de
Servidor
Servicio

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 4


Linux
 Quines utilizan Linux:
 NASA:

 Utilizando para realizar efectos especiales en


películas como:
“The
The Matrix”
Matrix “Titanic”

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 5


Linux
 Distribuciones de Linux: Linux constituye el núcleo
(kernel) del sistema operativo, es decir, se encarga de
controlar las operaciones del computador y asegurar el
correcto comportamiento de los programas.
 Las distribuciones juntan el núcleo con un conjunto
de programas para formar el Sistema Operativo.
 Slackware.
 Debian.
 RetHat.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 6


Consola
 Consola: Es la interfaz básica de comunicación del
usuario con el núcleo (kernel) del sistema operativo.

 Es un programa encargado de leer y ejecutar


comandos introducidos por el usuario y presentar
los resultados obtenidos.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 7


Consola
 bash: (Bourne Again SHell) es la interfaz básica por
defecto de Linux.
 El bash despliega un mensaje de espera o “prompt”
cuando esta listo para ejecutar un nuevo comando.

prompt

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 8


Consola
 csh: (C SHell) es otra interfaz disponible en linux que
permite ejecutar comandos utilizando un lenguaje
similar al C.
 tcsh: Es una versión del csh con funcionalidades
similares al bash.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 9


Consola
 En el shell se indica al Sistema Operativo los
comandos a ejecutar:

comando
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 10
Comandos útiles de Linux
 man: Presenta una manual de ayuda para el comando
indicado:
man comando

 clear: Borra la pantalla:

clear

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 11


Teclas útiles en Linux
 Historial de comandos: Linux permite navegar a través
de la historia de comandos que hemos ejecutado desde
que comenzamos a utilizar la consola:
 ↑: desplazarse al comando anterior en el historial,
más antiguo.
 ↓: desplazarse al comando siguiente en el historial,
más nuevo.
 Completación: Linux ofrece la posibilidad de
completar la entrada en consola.
 tab: completa si existe coincidencia de comandos,
archivos, etc.Programación – Prof. Gonzalo Müller – Clase Linux – GM - 12
Archivo
 Colección de información binaria, 0s y 1s, que
contiene datos o programas. Los cuales se encuentra
almacenados en unidad de almacenamiento externo
(disco duros, CD, DVD, etc.).

0 1 1 1 0 1 0 1 1
1 0 0 0 0 0 1 1 1
0 1 1 0 1 1 0 0 1
0 1 0 1 1 1 1 0 0
1 0 0 0 0 1 0 1 0
0 1 1 1 1 0 1 0 1

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 13


Archivo
 Todo archivo esta representado por una etiqueta de
presentación, que permite al usuario identificarlo fácil
y rápidamente.

0 1 1 1 0 1 0 1 1
1 0 0 0 0 0 1 1 1
0 1 1 0 1 1 0 0 1
Ejercicio1.HTML
0 1 0 1 1 1 1 0 0
1 0 0 0 0 1 0 1 0
0 1 1 1 1 0 1 0 1

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 14


Archivo
 La etiqueta esta formada por dos partes:
Nombre Apellido
Nombre Familia a la que pertenece

Nombre Extensión

Nombre.Extensión

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 15


Archivo
 La etiqueta esta formada por dos partes:
Nombre Apellido
Nombre Familia a la que pertenece

Nombre Extensión

Nombre.Extensión

Ejercicio1.HTML

Nombre Archivo HTML


Programación – Prof. Gonzalo Müller – Clase Linux – GM - 16
Archivo
 Tipos de archivos:
 Texto: Contiene datos en formato legible (texto).
(Programa Fuente)
 Binarios:
 Ejecutables: Contiene las instrucciones en código de
maquina de un programa ejecutable.
(Programa Ejecutable)
 Datos: Contiene datos en formato de maquina.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 17


Estructura de archivos
 Los archivos están organizados en una estructura de
árbol.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 18


Estructura de archivos
 Los archivos están organizados en una estructura de
árbol.
La base del árbol se le conoce como root. Se denota por /.
/

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 19


Estructura de archivos
 Los archivos están organizados en una estructura de
árbol.
/

El árbol se divide en ramas llamadas directorios.


Programación – Prof. Gonzalo Müller – Clase Linux – GM - 20
Estructura de archivos
 Los archivos están organizados en una estructura de
árbol. Un directorio constituyen una rama del árbol
que puede contener archivos y subdirectorios.
/

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 21


Estructura de archivos
 Los archivos están organizados en una estructura de
árbol. Un directorio constituyen una rama del árbol
que puede contener archivos y subdirectorios.
/

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 22


Estructura de archivos
 Los archivos están organizados en una estructura de
árbol.
/

Los archivos constituyen las hojas de los árboles


Programación – Prof. Gonzalo Müller – Clase Linux – GM - 23
Estructura de archivos Linux
 Los archivos están organizados por Linux como un
árbol de directorios conocido como VFS (Virtual File
System).
 La estructura de archivos es único y fija.
 La base contiene un conjunto de directorios fijos.
 Cada uno está destinado a un propósito específico.
 El usuario puede agregar nuevos directorios.
 Esto facilita el manejo de archivos y la
configuración del sistema independiente de la
distribución de Linux y la maquina utilizada.
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 24
Estructura de archivos Linux
 VFS: Directorio Contenido
/ bin
bin Comandos esenciales
boot
boot Archivos de boot del Sistema
dev
dev Archivos de mapeo de dispositivos de Hardware
etc etc Configuración del Sistema
lib lib Librerías estándar y Módulos del kernel
mnt mnt Puntos de montajes temporales
opt opt Software adicionales
sbin sbin Ejecutables de superusuario e inicio del sistema
tmp tmp Archivos temporales
media media Puntos de montajes dispositivos removibles
srv srv Datos de solo lectura de servicios
usr usr Software adicionales (Open Source)
var var Datos variables (logs, etc.)
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 25
Estructura de archivos Linux
 Directorios opcionales.
Directorio Contenido
root Documentos del superusuario
home Documentos y directorios de usuario.
Cada usuario tendrá un subdirectorio
dentro de este directorio

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 26


Estructura de archivos Linux

En Linux a diferencia de Windows se distingue entre


minúsculas y mayúsculas en los nombres de los archivos

En Linux a diferencia de Windows no existen directorios


predefinidos asociados a un dispositivo físico (Disco
Duro, Cd-Rom, etc).

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 27


Sistema de archivos
 Sistema de archivos: Sistema de Hardware y Software
permite la escritura, lectura y manipulación de
archivos.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 28


Sistema de archivos
 Los sistemas operativos ofrecen una colección de
instrucciones para manipular los archivos.
 Definición del árbol de archivos.
 Desplazamiento por el árbol de archivo.
 Creación, eliminación de directorios o archivos.
…

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 29


Sistema de archivos
 Directorio de trabajo: En todo momento en una
consola de trabajo solo se pueden acceder a un
directorio especifico.
El directorio donde se encuentre actualmente en el
árbol constituye el directorio de trabajo.
/

Directorio de trabajo
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 30
Sistema de archivos
 En este directorio se tiene acceso directo a los
archivos que este contiene.
/

Archivos

Es un directorio no puede existir archivos con un mismo


nombre y extensión, ni subdirectorios con un mismo nombre
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 31
Sistema de archivos
 Cada usuario definido en el sistema dispone de un
directorio Home.
 Este el directorio de trabajo inicial cuando se entra
al sistema.
 Contiene los archivos de usuario, a los cuales este
posee permisos total de manipulación de los
mismos.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 32


Ruta
 Camino que conduce a un directorio o archivo
específico.
/

Camino

Directorio de trabajo

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 33


Ruta
 Camino que conduce a un directorio o archivo
específico.
/

home
alumno
Camino

Directorio de trabajo

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 34


Ruta
 Camino que conduce a un directorio o archivo
específico.
/

home
alumno
Camino

Directorio de trabajo

Ruta /home/alumno

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 35


Ruta
 Camino que conduce a un directorio o archivo
específico.
/

home
alumno
Camino

Directorio de trabajo

Ruta /home/alumno
 Ruta absoluta: Camino desde la raíz del árbol.
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 36
Ruta
 Camino que conduce a un directorio o archivo
específico.
/

home
alumno

Directorio de trabajo
ejercicio1.html
Camino
Ruta relativa alumno/ejercicio1.html
 Ruta relativa: Camino desde el directorio de trabajo.
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 37
Manejo de Directorios
 pwd: instrucción que indica la ruta absoluta del
directorio de trabajo.
pwd
/

home
alumno
Camino

Directorio de trabajo

pwd /home/alumno
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 38
Manejo de Directorios
 ls: mostrar el contenido del directorio actual de
trabajo.
ls
/

Directorio de trabajo

ls ...
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 39
Manejo de Directorios
 cd: comando para cambiar el directorio actual de
trabajo.
cd directorio
/

Directorio de trabajo

Nuevo directorio de trabajo


Programación – Prof. Gonzalo Müller – Clase Linux – GM - 40
Manejo de Directorios
 cd: comando para cambiar el directorio actual de
trabajo.
cd directorio
/ cd ..

Nuevo directorio de trabajo

Directorio de trabajo
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 41
Manejo de Directorios
 cd: comando para cambiar el directorio actual de
trabajo.
cd directorio también se puede indicar
una ruta relativa o absoluta

/ cd ..

Nuevo directorio de trabajo

Directorio de trabajo
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 42
Manejo de Directorios
 mkdir: crea un subdirectorio en el directorio actual de
trabajo.
mkdir nombre
/

Nuevo Directorio
Directorio de trabajo nombre
Programación – Prof. Gonzalo Müller – Clase Linux – GM - 43
Manejo de Directorios
 rmdir: elimina un subdirectorio vació en el directorio
actual de trabajo.
rmdir nombre

Para eliminar un directorio que no está vació se debe


utilizar el comando:
rm –r nombre

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 44


Manejo de Archivos
 touch: crea un archivo vacío con el nombre dado en el
directorio actual de trabajo.
touch nombre

 rm: elimina el archivo con el nombre dado que


pertenece al directorio actual de trabajo.
rm nombre

Los nombres de los archivos se pueden


definir con cualquier carácter excepto /

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 45


Manejo de Archivos
 cat: Muestra el contenido de un archivo:
cat archivo

 head: Presenta las primeras líneas de un archivo:


head archivo

 tail: Muestra las últimas líneas de un archivo:


tail archivo

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 46


Manejo de Archivos
 less: muestra por paginas el contenido de un archivo
pertenece al directorio actual de trabajo.
less archivo
 more: muestra por paginas el contenido de un archivo
pertenece al directorio actual de trabajo.
more archivo
Con
 enter se continua a la siguiente pagina.
 q se sale en cualquier momento.

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 47


Manejo de Archivos
 cp: crea un archivo nuevo con el nombre dado cuyo
contenido es una copia del archivo original.
cp original nuevo
ruta/archivo ruta/archivo

 mv: mueve un archivo origen a un archivo destino.


mv origen destino
ruta/archivo ruta/archivo

Si el nombre del archivo contiene caracteres


especiales (*,?,$\,…) o espacios en blanco entonces
se debe encerrar entre comillas: “nombre”

Programación – Prof. Gonzalo Müller – Clase Linux – GM - 48

También podría gustarte