Técnico de Microinformática: Sistemas Operativos – Ubuntu
1. UBUNTU LiveCD
Un LiveCD consiste en un CD auto-arrancable que permite la ejecución de un escritorio
GNU/Linux completo, sin la necesidad de realizar ningún tipo de instalación en el disco duro.
Gracias a los LiveCDs de Ubuntu, es posible probar el sistema GNU/Linux para testear si todo
nuestro hardware es detectado automáticamente y para evaluar las posibilidades de la
distribución.
Aunque el LiveCD nos proporciona un escritorio funcional sin necesidad de modificar nuestro
disco duro (también válido para emergencias), no ofrece la misma velocidad ni las mismas
posibilidades que si realizamos la instalación permanente.
Para probar el LiveCD es necesario pedir a Canonical que nos envíe una muestra gratuita o
bajarlo nosotros mismos de la web ([Link] En el apartado de descargas
(downloads) se encuentran las imágenes ISO que podremos grabar usando K3B en Linux o
CDBurnXP ([Link] en Windows.
La imagen ISO no debe grabarse dentro de un CD de datos, sino que debe grabarse como lo que
es, una imagen de un CD. Por tanto habrá que utilizar la función específica de nuestro programa
de grabación para este tipo de archivos.
2. Escritorio GNOME
Una vez nos identificamos con nuestro usuario/password podremos acceder al escritorio GNOME
de Ubuntu:
El escritorio está compuesto por dos paneles.
Panel inferior
En el panel inferior se encuentra (de izquierda a derecha):
Botón para minimizar todas las ventanas y mostrar el fondo del escritorio.
Listado de ventanas (inicialmente no aparecerá ninguna pues no hay aplicaciones en
funcionamiento).
Escritorios virtuales. En GNU/Linux es habitual trabajar con diversos escritorios. En cada uno
podremos tener aplicaciones diferentes, de esta forma evitamos tener una gran cantidad de
ventanas en un mismo lugar.
Para cambiar de escritorio basta con hacer click con el botón izquierdo en el recuadro
correspondiente, o también es posible desplazarse usando la combinación de teclas
CTRL+ALT+Cursor.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
Es frecuente tener en cada escritorio aplicaciones relacionadas, por ejemplo: en el primer
escritorio navegador, en el segundo cliente de correo, en el tercero programas de chat, en el
cuarto programas de reproducción de música.
Podemos cambiar la cantidad de escritorios si pulsamos en el panel con el botón derecho y
seleccionamos “Preferencias”.
Papelera. Todo archivo borrado desde el navegador de disco Nautilus, irá a parar a la papelera
desde la cual podrá ser eliminado definitivamente. Para ver los archivos en la papelera bastará
con hacer un click con el botón izquierdo, para borrarlos podemos hacer click con el botón
derecho y seleccionar “Vaciar papelera”.
Panel superior
En el panel superior se encuentra (de izquierda a derecha):
Menú de aplicaciones: Aquí podremos encontrar todas las aplicaciones instaladas en el sistema
y catalogadas por tipo.
Si deseamos añadir nuevas entradas, podemos editar el menu haciendo click con el botón
derecho y seleccionando “Editar menús”.
Para añadir una nueva entrada pulsaremos sobre “New Entry” y tendremos que indicar
nombre, ejecutable e icono.
Para añadir una nueva sección pulsaremos “New Menu” y tendremos que indicar nombre e
icono.
Para editar una entrada existente podemos hacer doble click sobre ella.
Menú lugares: Listado de carpetas importantes de nuestro sistema. Al pulsar sobre ellas se
abrirá el gestor de archivos Nautilus.
Carpeta personal: En este lugar guardaremos todos nuestros documentos. También podremos
encontrar la carpeta Desktop que corresponde a nuestro escritorio.
Escritorio: Carpeta que corresponde a nuestro escritorio.
Equipo: Muestra dispositivos y particiones a las que es posible acceder en nuestro sistema.
En GNU/Linux para acceder a una partición o dispositivo como un CD/DVD-ROM, USB pendrive,
etc. es necesario montarlo. En Ubuntu este paso es automático nada más insertar el CD o USB
pendrive. En el caso de los disquetes es necesario ir a “Equipo” y hacer doble click sobre la
disquetera.
Para extraer un CD, disquete o USB pendrive es necesario realizar el paso inverso: desmontar.
De esta forma nos aseguramos que no se pierden datos. Para esto simplemente iremos a
“Equipo” y pulsaremos con el botón derecho sobre el dispositivo para seleccionar “Desmontar el
volumen” o “Expulsar”.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
Servidores de red: buscará en nuestra red ordenadores con recursos compartidos (tanto
Windowscomo GNU/Linux).
Conectar con el servidor: nos permite conectarnos a un servidor determinado mediante
FTP/sFTP/Webdav/etc...
Buscar archivos.
Documentos recientes.
Menú Sistema
Preferencias: Configuración del escritorio GNOME.
Administración: Configuración del sistema Ubuntu.
Capturar la pantalla. Genera una imagen de lo que estamos viendo en pantalla. Se consigue
la misma funcionalidad pulsando la tecla “Impr. Pant.”. Si deseásemos capturar solo la
ventana activa pulsaríamos ALT+”Impr. Pant.”.
Bloquear la pantalla. Nos permite bloquear nuestro escritorio, siendo necesario introducir el
password del usuario para poder volver a acceder. Muy útil cuando nos ausentamos de
nuestro PC y no queremos que nadie lo utilice o espíe lo que tenemos en marcha. Debería
ser una práctica habitual.
Tener nuestro escritorio bloqueado no impide que otro usuario del sistema pueda entrar en
su cuenta, para ello este podrá pulsar sobre el botón “Switch user”. Automáticamente
volverá a aparecer la pantalla de entrada al sistema donde el usuario deberá introducir su
nombre/password.
Si deseásemos cambiar entre los diferentes escritorios abiertos, podríamos hacerlo
mediante “Aplicaciones -> Herramientas del sistema -> Pantalla de entrada nueva”. O en
contrapartida, si nos encontramos en la pantalla de inicio observaremos que aparece la
opción “Salir” que nos llevará a nuestro escritorio original.
En cualquier caso, para un sistema donde solo hay un usuario o donde no va a ser utilizado
por más de un usuario simultáneamente, esta característica carece de interés.
Salir. A través de esta opción podremos:
Terminar la sesión. Volveremos a la pantalla de entrada (login).
Apagar.
Reiniciar la computadora.
Hibernar la computadora. Apaga la computadora manteniendo el estado actual, al volver a
iniciar el ordenador se restaurará el escritorio tal y como lo dejamos.
Cabe destacar que esta opción no siempre funciona a la perfección dado que depende del tipo
de hardware del ordenador.
Iconos para ejecutar el navegador web Mozilla Firefox,el cliente de correo Evolution y la ayuda
del sistema.
Área de notificación. Inicialmente aparece vacía, pero habrá programas que aparecerán ahí una
vez iniciados (e.g. Cliente mensajería instantánea Gaim). Este área es común para todos los
escritorios virtuales y por tanto se nos facilita el acceso rápido a ciertos programas.
Control del volumen. Haciendo click con el botón izquierdo podremos regular el volumen, con el
botón derecho podremos acceder a “Abrir el control de volumen” donde tendremos más
Técnico de Microinformática: Sistemas Operativos – Ubuntu
opciones.
Reloj del sistema. Al hacer click con el botón izquierdo aparece un calendario. Con el botón
derecho podremos acceder a las preferencias o a cambiar la hora actual (se requerirá el
password del usuario).
3. EL SHELL: COMANDOS BÁSICOS DE LINUX
Hasta este momento se han visto los entornos gráficos existentes para Linux más importantes, no
obstante cualquier usuario de Linux acabará antes o después relacionándose con el sistema
empleando el modo texto. Este modo se basa en la ejecución de una serie de comandos, que son
interpretados por un programa o shell. Linux dispone de varios de estos programas pero el
más habitual es conocido como bash o Bourne Shell. Si Linux se ha arrancado en modo texto el
sistema arranca de forma directa el shell y queda a la espera de introducción de nuevos comandos.
Si se ha arrancado en modo gráfico se puede acceder al shell de dos formas:
= Se puede acceder al shell del sistema presionando alguna de las siguientes combinaciones de
teclas:
= <ctrl>+<alt>+<F1>
= <ctrl>+<alt>+<F2>
= <ctrl>+<alt>+<F3>
= <ctrl>+<alt>+<F4>
= <ctrl>+<alt>+<F5>
= <ctrl>+<alt>+<F6>
Esto hace que el sistema salga del modo gráfico y acceda a alguna de las seis consolas virtuales
de Linux, a las cuales también se puede acceder cuando se arranca en modo de texto. Para
volver al modo gráfico hay que presionar <ctrl>+<alt>+<F7> o <ctrl>+<alt>+<F8>.
= La segunda forma es más cómoda y menos radical permitiendo acceder al shell desde el mismo
entorno gráfico. Para esto hay que abrir un programa llamado terminal o consola, por ejemplo:
kconsole (en el entorno KDE), xterm, gnome-terminal ( en GNOME), etc como se ha
visto anteriormente.
3.1 Introducción
Existen una serie de nociones básicas que hay que tener en cuenta a la hora de introducir los
comandos. En primer lugar citaremos las siguientes:
= Los comandos hay que teclearlos exactamente.
= Las letras mayúsculas y minúsculas se consideran como diferentes.
= En su forma más habitual (los shells de Bourne o de Korn), el sistema operativo utiliza un signo
de $ como prompt para indicar que está preparado para aceptar comandos, aunque este
carácter puede ser fácilmente sustituido por otro u otros elegidos por el usuario. En el caso
de que el usuario acceda como administrador este signo se sustituye por #.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
= Cuando sea necesario introducir el nombre de un fichero o directorio como argumento a
un comando, Linux, permite escribir las primeras letras del mismo y realiza un
autorrellenado al presionar la tecla del tabulador. Si no puede distinguir entre diversos casos
rellenará hasta el punto en el que se diferencien. Por ejemplo, supongamos una carpeta
con los siguientes directorios:
Programas
Documentos_proyecto
Documentos_privados
Al escribir cd Pr<tab> Linux rellenará el resto del contenido hasta escribir cd Programas. Por
el contrario al escribir cd D<tab> escribirá cd Documentos_
3.2 Algunos Comandos Sencillos de LINUX
Para efectuar el cambio o la introducción de un password o contraseña se utiliza el comando
passwd. El proceso a seguir es el siguiente:
passwd
(current) UNIX password: (se teclea la contraseña actual; no aparece en pantalla)
New UNIX password: (se teclea la nueva contraseña; no aparece en pantalla)
Retype new UNIX password: (se teclea de nuevo la nueva contraseña comprobando que se
ha tecleado bien. Si no coincide no se cambia produce el cambio).
A continuación se describen algunos comandos sencillos de que pueden ser útiles para
familiarizarse con los comandos del sistema.
date Muestra por pantalla el día y la hora.
cal 1949 Muestra el calendario del año 1949.
cal 05 1949 Muestra el calendario de mayo de 1949.
who Indica qué usuarios tiene el ordenador en ese momento, en qué
terminal están y desde qué hora.
whoami Indica cuál es la terminal y la sesión en la que se está trabajando.
man comando Todos los manuales de Linux están dentro del propio
sistema operativo, y este comando permite acceder a la
información correspondiente al comando comando. Por ejemplo
con man who aparecerá por pantalla y de forma formateada
por páginas, la explicación del comando who. Se puede navegar
a través de estas páginas con los cursores del teclado, y presionando
q para salir.
clear Este comando limpia la consola
Técnico de Microinformática: Sistemas Operativos – Ubuntu
3.3 Directorio Personal
Como se ha visto anteriormente el directorio personal es un directorio con un determinado nombre
asignado a un usuario. Los directorios personales habitualmente son subdirectorios de /home
(en algunos casos se utiliza mnt, u otro subdirectorio de orden inferior). Generalmente el
nombre coincide con el del nombre de usuario, aunque puede no ser así, y varios usuarios
pueden estar trabajando en el mismo directorio. Cada usuario de Linux puede crear una
estructura en árbol de subdirectorios y archivos tan compleja como desee bajo su directorio
personal pero normalmente nunca fuera de él.
3.3.1 Listado del contenido de directorios: comando ls
Una de las acciones más habituales a la hora de trabajar es mostrar el contenido de un
directorio, como se ha visto existen herramientas gráficas con este fin, no obstante el shell incluye
un programa con este mismo fin: ls,
ls Muestra los nombres de los ficheros y subdirectorios contenidos en el
directorio en el que se está. Sólo se obtienen los nombres de los ficheros, sin
ninguna otra información.
ls -a Muestra todos los ficheros incluyendo algunos que ordinariamente
están ocultos para el usuario (aquellos que comienzan por un punto). Se
recuerda que el fichero punto . indica el directorio actual y el doble
punto .. el directorio padre, que contiene, al actual.
ls -l Esta es la opción de lista larga: muestra toda la información de cada fichero
incluyendo: protecciones, tamaño y fecha de creación o del último cambio
introducido,...
ls -c Muestra ordenando por día y hora de creación.
ls -t Muestra ordenando por día y hora de modificación.
ls -r Muestra el directorio y lo ordena en orden inverso.
ls subdir Muestra el contenido del subdirectorio subdir.
ls -l filename Muestra toda la información sobre el fichero.
ls --color Muestra el contenido del directorio coloreado.
Las opciones anteriores pueden combinarse. Por ejemplo:
ls -cr Muestra el directorio ordenando inversamente por fechas.
El comando ls admite los caracteres de sustitución o metacarácteres (*) y (?). El carácter *
representa cualquier conjunto o secuencia de caracteres. El carácter ? representa cualquier carácter,
pero sólo uno. Por ejemplo:
ls *.gif Muestra todos los nombres de ficheros que acaben en .gif, por ejemplo
[Link], [Link], etc.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
ls file? Muestra todos los ficheros cuyos nombres empiecen por file y tengan un
nombre de cinco caracteres, por ejemplo: file1, file2, filea, etc.
3.3.2 Creación de subdirectorios. Comando mkdir
El comando mkdir (make directory) permite a cada usuario crear un nuevo subdirectorio:
mkdir subdir1
donde subdir es el nombre del directorio que se va a crear.
3.3.3 Borrado de subdirectorios. Comando rmdir
Este comando borra uno o más directorios del sistema (remove directory), siempre que estos
subdirectorios estén vacíos. Por ejemplo:
rmdir subdir1
donde subdir es el nombre del directorio que se va a eliminar.
3.3.4 Cambio de directorio. Comando cd
Este comando permite cambiar de directorio a partir del directorio actual de trabajo. Por ejemplo,
cd /home/Pedro En este ejemplo pasamos del directorio actual de trabajo al nuevo directorio
/home/Pedro, que será desde ahora nuestro nuevo directorio.
cd dire Nos traslada al subdirectorio dire (que deberá existir como subdirectorio en
el directorio actual).
cd .. Retrocedemos un nivel en la jerarquía de directorios. Por ejemplo, si
estamos en /home/Pedro y usamos este comando, pasaremos al
escalafón inmediatamente superior de la jerarquía de directorios, en este
caso a /home. Nota: al contrario que en MS-DOS en Linux no existe
la forma cd.. sin espacio entre cd y los dos puntos.
cd Nos sitúa nuevamente en el directorio personal del usuario.
3.3.5 Situación actual. Comando pwd
El comando pwd (print working directory) visualiza o imprime la ruta del directorio en el que nos
encontramos en este momento. Este comando es uno de los pocos que no tiene opciones y se utiliza
escribiendo simplemente pwd.
3.3.6 Acceso a unidades de disco
Linux a diferencia de Windows no utiliza letras ("a:", "c:", "d:", ...) para acceder a las
distintas unidades de disco de un ordenador. En Linux para acceder al contenido de una unidad de
disco o de
un CD-ROM este tiene que haber sido previamente "montado". El montado se realiza mediante el
comando mount, con lo que el contenido de la unidad se pone a disposición del usuario en
el directorio de Linux que se elija. Por ejemplo para acceder al CD-ROM se teclearía el
siguiente comando:
mount -t iso9660 /dev/cdrom /mnt/cdrom
Técnico de Microinformática: Sistemas Operativos – Ubuntu
donde -t iso9660 indica el tipo de sistema que usa la unidad de disco para guardar los ficheros (las
más usuales son: iso9660 en el caso de un CD-ROM, vfat en el caso de Windows, y ext2 en el caso
de Linux), /dev/cdrom indica el dispositivo que se va a montar. Todos los dispositivos
están representados por un fichero del directorio /dev, por ejemplo en el caso de un
disquete será seguramente /dev/fd0, por último /mnt/cdrom es el directorio en el que se pondrá a
disposición del usuario el contenido del CD-ROM. Para montar disquetes se suele utilizar el
directorio /mnt/floppy.
De todas formas el usuario siempre puede crear un directorio vacío con el nombre que el elija para
montar las unidades de disco que desee donde desee.
Cuando el usuario haya dejado de usar ese disco deberá "desmontarlo" mediante el comando
umount antes de sacar el disquete o el CD-ROM. En este último caso debería escribir:
umount /mnt/cdrom
Para utilizar el comando mount de la forma anterior hace falta ser administrador o root. Para que un
usuario común pueda utilizar disquetes, CD-ROM, etc. hay que editar el fichero /etc/fstab
Por ejemplo para que cualquier usuario pueda acceder a un disquete habrá que indicar la siguiente
línea:
/dev/fd0 /mnt/floppy vfat user,noauto 0 0
También habrá que asegurarse de que el directorio /mnt/floppy sea accesible por todos los usuarios.
Una vez seguidos los pasos anteriores cualquier usuario podrá "montar" un disquete escribiendo el
siguiente comando:
mount /mnt/floppy
Al igual que antes el usuario deberá ejecutar el comando umount /mnt/floppy antes de sacar
el disquete.
Nota: Existen en la actualidad distribuciones (p. ej. Linux Mandrake) que realizan este proceso de
forma automática por lo que las unidades de disquete y CD-ROM quedan accesibles a todos
los usuarios de una forma sencilla, empleando los comandos:
mount /mnt/floppy
umount /mnt/floppy
siempre que /mnt/floppy sea la ruta adecuada.
3.3.7 Copia de ficheros. Comando cp
Este comando tiene la siguiente forma,
cp file1 file2
y hace una copia de file1 y le llama file2. Si file2 no existía, lo crea con los mismos atributos de
file1. Si file2 existía antes, su contenido queda destruido y es sustituido por el de file1. El fichero
file2 estará en el mismo directorio que file1. Tanto file1 como file2 indican el nombre de
un archivo, que puede incluir el la ruta al mismo si alguno de ellos no se encuentra en el
directorio actual. Otra posibilidad es:
Técnico de Microinformática: Sistemas Operativos – Ubuntu
cp file1 file2 namedir
que hace copias de file1 y file2 en el directorio namedir.
3.3.8 Traslado y cambio de nombre de ficheros. Comando mv
Este comando tiene una forma similar al anterior ,
mv file1 file2
El comando mv realiza la misma función que el anterior (cp) pero además destruye el
fichero original. En definitiva traslada el contenido de file1 a file2; a efectos del usuario lo que ha
hecho es cambiar el nombre a file1, llamándole file2. De igual forma,
mv file1 file2 namedir
traslada uno o más ficheros (file1, file2,...) al directorio namedir conservándoles el nombre. El
comando,
mv namedir1 namedir2
cambia el nombre del subdirectorio namedir1 por namedir2.
Hay que recalcar que el comando mv sirve así mismo para cambiar el nombre de los ficheros.
3.3.9 Enlaces a ficheros. Comando ln
En Linux un mismo fichero puede estar repetido con más de un nombre, ya que con el comando cp
se pueden realizar cuantas copias se desee del fichero. Pero, a veces, es más práctico tener
un mismo fichero con varios nombres distintos, y lo que es más importante, poder acceder a él
desde más de un directorio. En Linux esto recibe el nombre de enlaces múltiples a un fichero. El
ahorro de espacio de disco es importante al poder compartir un fichero más de un usuario. Estos
enlaces son muy prácticos a la hora de utilizar ficheros que pertenecen a directorios
distintos. Gracias a los enlaces se puede acceder a muchos ficheros desde un mismo directorio,
sin necesidad de copiar en
ese directorio todos esos ficheros. La forma de este comando es,
ln file1 file2
A partir de este momento el fichero file1 tiene dos nombres: file1 y file2. A diferencia de
los comandos cp y mv, este comando toma más precauciones, ya que advierte previamente si el
nombre file2 está ocupado, y en este caso no se ejecuta.
ln panacea subdir/panacea
Después de este comando el fichero panacea tendrá el mismo nombre, pero a efectos del usuario
estará colocado en dos sitios distintos: en el directorio actual y en el subdirectorio subdir.
Los ficheros enlazados a otro se borran como los ficheros normales. Si se borra el fichero original
permanece su contenido en los ficheros enganchados.
3.3.10 Borrado de ficheros. Comando rm
Este comando tiene las formas siguientes,
Técnico de Microinformática: Sistemas Operativos – Ubuntu
rm file1 file2
Este comando elimina uno o más ficheros de un directorio en el cual tengamos permiso de escritura.
Con este comando resulta facilísimo borrar ficheros inútiles, y desgraciadamente, también los útiles.
Por eso es conveniente y casi imprescindible emplear lo opción -i, de la forma siguiente:
rm -i file1 file2
Con esta opción, Linux pedirá confirmación para borrar cada fichero de la lista, de si realmente se
desea su destrucción o no. Se recomienda usar siempre este comando con esta opción para evitar el
borrado de ficheros útiles. Por ejemplo, si se teclea,
rm -i superfluo
aparecerá en pantalla el aviso siguiente:
remove superfluo?
y habrá que contestar y (yes) o n (not). En este comando se pueden utilizar los caracteres de
sustitución (* y ?), como por ejemplo,
rm fich*
que borraría todos los ficheros del directorio actual que comiencen por fich. El comando
rm *
borrará todos los ficheros del directorio actual, mientras que
rm -i *
realiza una labor análoga, pero con previa confirmación.
3.3.11 Características de un fichero. Comando file
Este comando realiza una serie de comprobaciones en un fichero para tratar de clasificarlo. Su
formato es:
file fich
Tras su ejecución este comando muestra el tipo del fichero e información al respecto del mismo.
3.3.12 Cambio de modo de los ficheros comandos chmod, chown y chgrp
Los permisos de cada fichero se pueden ver con el comando ls -l. Para cambiar los permisos de un
fichero se emplea el comando chmod, que tiene el formato siguiente:
chmod [quien] oper permiso files
quien Indica a quien afecta el permiso que se desea cambiar. Es una combinación
cualquiera de las letras u para el usuario, g para el grupo del usuario, o para
los otros usuarios, y a para todos los anteriores. Si no se da el
quien, el sistema supone a.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
oper Indica la operación que se desea hacer con el permiso. Para dar un permiso
se pondrá un +, y para quitarlo se pondrá un -.
permiso Indica el permiso que se quiere dar o quitar. Será una combinación
cualquiera de las letras anteriores : r,w,x,s.
files Nombres de los ficheros cuyos modos de acceso se quieren cambiar.
Por ejemplo, para quitar el permiso de lectura a los usuarios de un fichero el comando es:
chmod a -r [Link]
Los permisos de lectura, escritura y ejecución tienen un significado diferente cuando se aplican a
directorios y no a ficheros normales. En el caso de los directorios el permiso r significa la
posibilidad de ver el contenido del directorio con el comando ls; el permiso w da la posibilidad de
crear y borrar ficheros en ese directorio, y el permiso x autoriza a buscar y utilizar un
fichero concreto.
Por otra parte, el comando chown se emplea para cambiar de propietario (“change owner”) a
un determinado conjunto de ficheros. Este comando sólo lo puede emplear el actual propietario de
los mismos. Los nombres de propietario que admite Linux son los nombres de usuario, que
están almacenados en el fichero /etc/passwd. La forma general del comando chown es la siguiente:
chown newowner file1 file2 ...
Análogamente, el grupo al que pertenece un fichero puede ser cambiado con el comando chgrp, que
tiene una forma general similar a la de chown,
chgrp newgroup file1 file2...
Los grupos de usuarios están almacenados en el fichero /etc/group.
3.4 Espacio ocupado en el disco Comandos du y df
El comando du permite conocer el espacio ocupado en el disco por un determinado
directorio y todos los subdirectorios que cuelgan de él. Para usarlo basta simplemente colocarse en
el directorio adecuado y teclear, du, éste comando da el espacio de disco utilizado en bloques.
Para obtener la información en bytes se debe emplear el comando con la opción –h: du -h
El comando df por el contrario informa del espacio usado por las particiones del sistema que
se encuentren montadas.
3.5 Visualización sin formato de un fichero. Comando cat
Este comando permite visualizar el contenido de uno o más ficheros de forma no
formateada. También permite copiar uno o más ficheros como apéndice de otro ya existente.
Algunas formas de utilizar este comando son las siguientes,
cat filename Saca por pantalla el contenido del fichero filename.
cat file1 file2... Saca por pantalla, secuencialmente y según el orden especificado, el
contenido de los ficheros indicados.
cat file1 file2 >file3 El contenido de los ficheros file1 y file2 es almacenado en file3.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
cat file1 file2 >>file3 El contenido de file1 y file2 es añadido al final de file3.
cat >file1 Acepta lo que se introduce por el teclado y lo almacena en file1 (se
crea
file1). Para terminar se emplea <ctrl>d
3.6 Comando head
head -7 filename
escribe las 7 primeras líneas del fichero filename
3.7 Visualización de ficheros con formato. Comando pr
Este comando, a diferencia de cat, imprime por consola el contenido de los ficheros de una manera
formateada, por columnas, controlando el tamaño de página y poniendo cabeceras al comienzo de
las mismas. Está muy en relación con el comando lp de salida por impresora. Las formas más
importantes que admite son las siguientes:
pr file Produce una salida estándar de 66 líneas por página, con un encabezamiento
de 5 líneas (2 en blanco, una de identificación y otras 2 líneas en blanco).
pr -ln file Produce una salida de n líneas por página (cuando el tamaño de papel
de impresora, por ejemplo, tiene un número de líneas distinto de 66)
pr -p file Hace una pausa para presentar la página, hasta que se pulsa <return> para
continuar
pr -t file Suprime las 5 líneas del encabezamiento y las del final de página.
pr -wn file Ajusta la anchura de la línea a n posiciones.
pr -d file Lista el fichero con espaciado doble.
pr -h `caracteres` file el argumento o cadena de caracteres `caracteres` se convertirán en la
cabecera del listado.
pr +n file Imprime el fichero a partir de la página n.
Además de los ejemplos anteriores, se pueden combinar varias opciones en un mismo comando,
como por ejemplo en: pr -dt file la salida de este comando es por la consola, pero puede
redireccionarse a otro fichero, por ejemplo, si ejecutamos el comando: pr file1 > file2 se crea un
fichero nuevo llamado file2 que es idéntico a file1, pero con formato por páginas y columnas.
3.8 Visualización de ficheros pantalla a pantalla. Comandos more y less
Estos comandos permiten visualizar un fichero pantalla a pantalla. El número de líneas por pantalla
es de 23 líneas de texto y una última línea de mensajes, donde aparecerá la palabra more. Cuando se
pulsa la barra espaciadora (el espacio en blanco), se visualizará la siguiente pantalla. Para salir
de este comando (terminar la visualización) se pulsa <ctrl>d o q. Por ejemplo: more file
El comando less es muy similar al anterior pero permite el desplazamiento a lo largo del
texto empleando las teclas de cursores pudiendo desplazarse hacia arriba o abajo de un fichero.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
3.9 Búsqueda en ficheros. Comandos grep, fgrep y egrep
El comando grep localiza una palabra, clave o frase en un conjunto de directorios,
indicando en cuáles de ellos la ha encontrado. Este comando rastrea fichero por fichero, por
turno, imprimiendo aquellas líneas que contienen el conjunto de caracteres buscado. Si el
conjunto de caracteres a buscar está compuesto por dos o más palabras separadas por un espacio,
se colocará el conjunto de caracteres entre apóstrofes ('). Su formato es el siguiente:
grep 'conjuntocaracteres' file1 file2 file3
siendo 'conjuntocaracteres' la secuencia de caracteres a buscar, y file1, file2, y file31 los ficheros
donde se debe buscar. Veamos un nuevo ejemplo:
grep 'TRIANGULARIZACION MATRIZ' matrix.f scaling.f
Este comando buscará TRIANGULARIZACION MATRIZ entre las líneas de los ficheros
matrix.f y scaling.f. Este comando permite seleccionar, entre todas las líneas de uno o más ficheros,
aquellas que contienen un motivo que satisface una expresión regular determinada.
grep [-opcion] expresión_regular [referencia...]
Las opciones principales son:
c lo único que se hace es escribir el número de las líneas que satisfacen
la condición.
i no se distinguen mayúsculas y minúsculas.
l se escriben los nombres de los ficheros que contienen líneas buscadas.
n cada línea es precedida por su número en el fichero.
s no se vuelcan los mensajes que indican que un fichero no se puede abrir.
v se muestran sólo las líneas que no satisfacen el criterio de selección.
A continuación se muestra una serie de ejemplos.
= grep ‘ˆd’ text líneas que comienzan por d.
= grep ‘ˆ[ˆd]’ text líneas que no comienzan por d.
= grep -v ‘ˆC’ file1 > file2 quita las líneas de file1 que comienzan por C y lo
copia en file2.
3.10 Comandos tar y gzip
Tanto el comando tar como gzip son ampliamente empleados para la difusión de programas y
ficheros en Linux. El primero de ellos agrupa varios ficheros en uno solo o “archivo”, mientras que
el segundo los comprime. En conjunto estos dos programas actúan de forma muy similar a
programas como Winzip. Para crear un nuevo archivo se emplea:
tar –cvf nombre_archivo.tar fichero1 fichero2 …
Técnico de Microinformática: Sistemas Operativos – Ubuntu
donde fichero1, fichero2 etc. son los ficheros que se van a añadir al archivo tar. Si se desea extraer
los ficheros se emplea
tar –xpvf nombre_archivo.tar fichero1 …
Al contrario que tar que agrupa varios ficheros en uno, gzip comprime un único fichero con lo que
la información se mantiene pero se reduce el tamaño del mismo. El uso de gzip es muy sencillo
gzip fichero
con lo que se comprime fichero (que es borrado) y se crea un fichero con nombre [Link]. Si lo
que se desea es descomprimir un fichero se emplea entonces:
gzip –d [Link]
recuperando el fichero inicial. Como se ha comentado al principio es típico emplear tar y gzip de
forma consecutiva, para obtener ficheros con extensión [Link] o tgz que contienen varios ficheros de
forma comprimida (similar a un fichero zip). El comando tar incluye la opción z para estos ficheros
de forma que para extraer los ficheros que contiene:
tar –zxf [Link]
3.11 Comandos de impresión.
3.11.1 Comando lpr
El comando lpr se emplea para imprimir una serie de ficheros. Si se emplea sin argumentos
imprime el texto que se introduzca a continuación en la impresora por defecto. Por el contrario,
lpr nombre_fichero
imprime en la impresora por defecto el fichero indicado.
Técnico de Microinformática: Sistemas Operativos – Ubuntu
4. REDIRECCIONES Y TUBERÍAS
4.1 Redirecciones
Los comandos de Linux tienen una entrada estándar (número 0) y dos salidas estándar (número 1
para la salida normal del comando, y número 2 para la salida de los mensajes de error que se puedan
producir en su ejecución). Por defecto tanto la entrada como las salidas estándar de los comandos
son la propia terminal, a no ser que por la propia naturaleza del comando se den en él los nombres
de algunos ficheros que hagan el papel de entrada y de salida. Por ejemplo, en el comando
cp file1 file2
file1 es la entrada y file2 es la salida; aquí no intervienen las entradas y salidas estándar.
Sin embargo, cuando utilizamos por ejemplo el comando ls (listado de directorio), la salida
de este comando se dirige hacia la terminal. Si queremos que la salida de este comando se
dirija a un fichero llamado file, podríamos escribir,
ls >file
el (>) es uno de los llamados operadores de redirección y dirige la salida estándar hacia el fichero
indicado a continuación; si este fichero no existe, se crea en ese momento. Otros
operadores de redirección son el operador (<) que redirige la entrada estándar desde un
determinado fichero, y el operador (>>) que redirige la salida estándar hacia otro fichero, pero
añadiendo dicha salida al final
de ese fichero, sin sobreescribir el contenido original. Por ejemplo, si cada vez que entramos en el
sistema ejecutamos el comando,
date >>archivo
tendremos un fichero llamado archivo que contiene información sobre todas las veces que hemos
entrado en el sistema. Otro ejemplo, para añadir al fichero file2 al final de file1 y al
conjunto llamarle file3, sería
cat file1 file2 >file3
o, si quisiéramos que el fichero resultante fuera el mismo file1,
cat file2 >>file1
Un ejemplo en redirección a la entrada podría ser el siguiente,
mail juan <carta
que envía al usuario juan el contenido del fichero carta.
4.2 Tuberías
Siguiendo con los ejemplos anteriores, si quisiéramos enviar a juan una lista de nuestros ficheros
podríamos utilizar los comandos,
ls >fichero
mail juan <fichero
rm fiche
Técnico de Microinformática: Sistemas Operativos – Ubuntu
Es decir que hemos conectado la salida estándar de ls con la entrada estándar de mail, a través de un
fichero transitorio filelist. Linux permite hacer esta operación directamente, sin pasar por el fichero
de almacenamiento transitorio: esto se hace mediante el concepto de tubería (pipe), que consiste
en empalmar la salida estándar de un comando con la entrada estándar de otro. Para el ejemplo
anterior esto se hace en la forma,
ls | mail juan
Con el operador de tubería (|) se pueden empalmar tantos comandos como se desee.
4.3 Bifurcación o T (comando tee)
A veces interesa que la salida de un comando, además de redirigirse a un determinado fichero,
se bifurque también hacia la terminal, con objeto de observar inmediatamente el resultado.
Esto se consigue con el operador tee, que podría emplearse de la siguiente forma:
ls | tee file
la salida de ls se bifurca hacia la terminal y hacia file.
Si quisiéramos que la salida de este comando se añadiera al final de file, deberíamos
utilizar la opción -a,
ls | tee -a file
4.4 Redirección de la salida de errores
Los mensajes de error se dirigen a la salida número 2, que normalmente es también la terminal.
A veces, por ejemplo cuando se quiere ejecutar un comando en background (ejecutar un
comando en background es lanzar su ejecución y recuperar el control de la terminal sin esperar a
que termine, lo cual se hace añadiendo el carácter & al final del comando), interesa evitar que los
mensajes de error aparezcan en la pantalla, pues en ella habremos empezado a hacer otra cosa.
Supongamos por ejemplo que queremos compilar y montar en background un conjunto de
ficheros, dirigiendo los listados a un fichero llamado listados, y los mensajes de error a un
fichero llamado errores. Lo haríamos en la forma,
gcc prueba.c 2>errores
con lo cual la salida 2 (errores) se redirige hacia el fichero errores. Para redirigir la salida estándar
de errores al mismo fichero que la salida estándar se emplea un comando como:
program <datos.d >resultados.r 2>&1