Está en la página 1de 10

Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5.

Manipulación de archivos y directorios


1º CFGM – Explotación de Sistemas Informáticos

TEMA 5 – MANIPULACIÓN DE ARCHIVOS Y DIRECTORIOS

INDICE

1. INTRODUCCIÓN..............................................................................................................1
2. COMANDOS PARA MANIPULACIÓN DE ARCHIVOS Y DIRECTORIOS .....................2

1. INTRODUCCIÓN

Vamos a ver seguidamente una serie de órdenes empleadas para manipular archivos y directorios. Mostraremos
cómo podemos movernos por los diferentes directorios, cómo ver el contenido de cada uno de ellos, etc. La mayoría de
las órdenes que vamos a ver en este tema son de uso muy frecuente, y es imprescindible familiarizarse con ellas.

Hemos de tener en cuenta que para entrar en el sistema utilizaremos nuestro usuario y contraseña, no debemos
trabajar con la cuenta de root, a no ser que sea estrictamente necesario. En caso de que tengamos que realizar alguna
operación con la cuenta de root debemos teclear la siguiente orden su – y escribir la contraseña de root.

Pero, antes de todo, hemos de tener en cuenta algunos conceptos:

a) Si aún no tenemos una cuenta de usuario, para crearla teclearemos la siguiente orden adduser
<nombre_usuario>. Una vez hecho esto, estableceremos la contraseña para dicha cuenta tecleando la siguiente
orden passwd <nombre_usuario>. Escribimos una contraseña y con esto tendremos nuestra cuenta creada. Por
defecto, el directorio de trabajo será /home/nombre_usuario/.

b) Por otra parte, a continuación se indican varios comandos que pueden ser útiles en algún momento:

o exit: abandonar la terminal, o si nos encontramos en la cuenta de root saldremos de ella.


o logout: cierra la sesión de un usuario.
o login: inicia sesión, nos pedirá nombre de usuario y contraseña.
o reboot : reinicia el equipo (#shutdown –r now, solo modo superusuario)
o halt: apaga el equipo (#shutdown –h now, solo modo superusuario)
o man <comando>: obtiene ayuda de un comando.

c) Si el prompt del sistema o intérprete de comandos muestra un símbolo de $, estaremos trabajando en


una cuenta de usuario, pero si el prompt muestra un símbolo de #, estaremos trabajando en modo root o
superusuario.

d)El árbol de directorios en Linux, tiene forma de árbol invertido. Todos los directorios parten de un
directorio raíz representado por “/”. Además, el directorio actual es representado por un punto “.” , siendo el
directorio padre representado por dos puntos “..”.

e) Hemos de tener en cuenta que existen caracteres comodín que podemos utilizar. Los caracteres
comodín son:

o *(asterisco) – Representa cualquier cadena de caracteres


o ?(Interrogación) – Sustituye a un único carácter en el nombre de un archivo

Profesor: José Luis García - Dpto. Informática Página 1


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

2. COMANDOS PARA MANIPULACIÓN DE ARCHIVOS Y DIRECTORIOS

Comando: ls
Descripción: Lista el contenido del directorio en que nos encontramos. Si ponemos sólo ls se obtiene una lista con el
nombre de los ficheros; si se quiere obtener más información sobre esos ficheros se utilizan las opciones del comando,
cuya sintaxis general es: ls [-alsF] fichero
Opciones:
o a Lista además los ficheros invisibles (es decir, los que empiezan por punto)
o l Dá la siguiente información de los ficheros :

Tipo de fichero : d directorio l enlace - fichero ordinario


Tipo de permisos: r lectura w escritura x ejecución
Número de enlaces
Nombre del propietario del fichero
Tamaño del fichero (en bytes)
Fecha de la última modificación
Nombre del fichero

NOTA.- ls -l es equivalente a ll=

o s El tamaño del fichero en kilobytes (1024 bytes) precede al nombre de cada fichero.
o F Añade un / a los ficheros directorios y un * a los ficheros ordinarios ejecutables.

NOTA.- ls -F es equivalente a lf

o fichero Nombre de un fichero o un directorio.

Estas opciones se pueden combinar para obtener la información que queramos al mismo tiempo; por ejemplo, ls -sF,
dará la lista de los ficheros en la que el nombre de cada fichero va precedido por su tamaño (en kilobytes) y va seguido
de un slash (/) en el caso de que sea un directorio o de un asterisco (*) en el caso de que sea un fichero ejecutable.
Por último, indicaremos que se puede listar el contenido de un directorio diferente al que estamos, sin más que
especificar el path correspondiente a continuación de las opciones; por ejemplo: ls /usr/share/doc/
Ejemplo:
si hacemos ls -al Desktop
bash-2.05b# ls -al Desktop
total 36
drwxr-xr-x 3 usuario usuario 4096 2005-01-11 18:10 .
drwx---r-- 36 usuario usuario 4096 2005-01-16 18:18 ..
lrwxrwxrwx 1 root usuario 51 2005-01-09 19:12 Actualizacion-
Guadalinex.desktop -> /usr/share/applications/gl-actualizacion-cd.desktop
drwxrwsr-x 5 usuario usuario 4096 2005-01-09 19:44 Andalucia y la Sociedad de la
Información
-rwx------ 1 usuario usuario 251 2003-05-26 12:16 Averroes.desktop
-rwx------ 1 usuario usuario 119 2005-01-09 19:39 CD-ROM
lrwxrwxrwx 1 usuario usuario 17 2005-01-09 19:39 Enlace al escritorio anterior
-> ../.gnome-desktop
lrwxrwxrwx 1 usuario usuario 49 2005-01-09 19:57 impresora-anuncio.desktop ->
/usr/share/applications/impresora-anuncio.desktop
lrwxrwxrwx 1 usuario usuario 58 2005-01-09 19:57 impresora-comparte-
anuncio.desktop -> /usr/share/applications/impresora-comparte-anuncio.desktop
-rwxr-xr-x 1 usuario usuario 329 2004-02-26 17:21 instalador_acrobat.desktop
-rwxr-xr-x 1 usuario usuario 341 2004-02-12 12:51 java_plugin.desktop
-rw-r--r-- 1 usuario usuario 307 2003-10-02 17:14 Llavero USB.desktop
-rwx------ 1 usuario usuario 256 2003-05-26 12:49 Programas educativos.desktop

Profesor: José Luis García - Dpto. Informática Página 2


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

EJERCICIOS 1

1. Abre un terminal.
2. Usando el comando ls, comprueba el contenido de tu directorio de usuario.
3. Comprueba ahora el contenido del directorio /etc.
4. Comprueba el contenido del directorio /
5. Escribe ls /etc/f* . Observa que nos muestra los ficheros y directorios cuyo nombre empieza por "f".
6. Escribe el comando que muestre todos los ficheros del directorio "/etc" que acaben en ".conf"

Comando: pwd
Descripción: Indica la ubicación exacta del directorio de trabajo actual
Opciones:
Ejemplo: tecleando pwd obtendremos algo así /home/usuario/

Comando: cat
Descripción: El comando cat (concatenate) se utiliza para visualizar por pantalla el contenido de uno o más ficheros.
Cuando se especifica más de un fichero, cat los edita uno detrás de otro. La sintaxis del comando es:
cat [-ns] fichero(s)
Opciones:
o n Numera las líneas.
o s Elimina las líneas en blanco.
o fichero(s) Nombre o nombres de los ficheros que se van a editar.
El comando cat no pagina, entonces se utiliza:
o CTRL-S para parar la pantalla.
o CTRL-Q para continuar con la edición.
Si nuestro sistema es demasiado rápido podemos ayudarnos del comando more (ver más abajo):
cat fichero | more
El comando cat permite también concatenar ficheros; para ello se pondría:
cat fichero1 fichero2 ... > fichero n
entonces une los ficheros fichero1, fichero2 ... y lo almacena en el fichero n.

NOTA:Si se utiliza por equivocación el comando cat sin ningún argumento, intenta leer de la pantalla, por lo que no sale
el prompt del sistema (se queda como colgada); entonces hay que pulsar CTRL-C para salir. Como el comando cat no
pagina, cuando queramos editar un fichero que es muy largo, es aconsejable utilizar el comando more.
Ejemplo: cat fich1 fich2 > suma ( Concatena 2 archivos)

Comando: grep
Descripción: El comando grep busca una cadena de caracteres en uno o más ficheros y lista todas las líneas que la
contienen. La sintaxis del comando es:
grep [- v l i w n r ] cadena1 fichero(s)
Opciones:
o v Lista las líneas que no contienen la cadena de caracteres.
o l Lista el nombre del fichero que contiene la cadena de caracteres.
o i Ignora la diferencia entre letras mayúsculas y minúsculas.
o w Se debe de utilizar cuando la cadena de caracteres es una única palabra.
o n Muestra el número de la línea en la que se encuentra la cadena de caracteres.
o r En caso que sea un directorio, para buscar en todos los que cuelgan de él.
o cadena Cadena de caracteres que se quiere buscar.
o fichero(s) Nombre o nombres de los ficheros en los que se quiere buscar la cadena de caracteres especificada.
Ejemplo: grep “hola” * (Busca la cadena “hola” en todos los archivos)

Profesor: José Luis García - Dpto. Informática Página 3


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

EJERCICIOS 2

1. Haz cat /etc/fstab: El archivo /etc/fstab contiene líneas donde se indica qué dispositivo debe "montar", el lugar
donde "montarlo", así como el sistema de archivos y las opciones (en este archivo, se pueden poner dos
opciones más: auto y noauto, que indican si se debe "montar" automáticamente al arrancar el sistema o no,
respectivamente). Más adelante puede verse su relación con el comando mount.
2. cat -n /etc/passwd: Contiene de claves del sistema.
3. cat /etc/resolv.conf: Contiene las direcciones DNS y el nombre del dominio.
4. cat /etc/hosts : Contiene las direcciones y los nombres de los equipos de la red.
5. Busca los ficheros del directorio "/etc" que contengan "/hda".
6. Observa que hay ficheros a los que "grep" no puede acceder .
7. cat /etc/group: Contiene los grupos registrados en el sistema. No tenemos permiso de lectura sobre este fichero.
8. Para poder ver su contenido podemos entrar como "root", para ello escribimos el comando su y nos pedirá la
clave. Acabamos de entrar como administrador del sistema ("root"), comprueba que ahora puedes listar el
contenido de "etc/group" con el comando "cat".
9. Crea un fichero usando gedit fichero1, nos preguntará si deseamos crear el fichero y contestaremos "Si".
10. Aparecerá la ventana del editor. Escribe dentro de él: "Sistemas Operativos en entornos monousuario y
multiusuario". Guarda las modificaciones pulsando en "Guardar".
11. Comprueba usando grep que puedes encontrar ese archivo al buscar los que contengan la cadena "Entornos" en
el directorio "/home" y todos sus subdirectorios.
12. ¿Lo encontraremos igual si buscamos los ficheros que contengan la cadena "entornos"?
13. Escribe cat fichero1 fichero1 fichero1 > fichero2. Comprueba con ls que ha aparecido un fichero llamado
"fichero2".
14. Observa usando cat el contenido del fichero.

Comando: more
Descripción: El comando more se utiliza para editar ficheros por la pantalla; la principal diferencia con cat es que se
puede controlar el número de líneas que aparecen en pantalla, utilizando las teclas siguientes:
o Con la "barra espaciadora" se avanza una página.
o Con la tecla de return se avanza una línea.
o Con la tecla DEL ó q se sale de la edición.
La sintaxis de este comando es: more [-cd] [+número de líneas] [+/path] fichero(s)
Opciones:
o -c Edita pantalla a pantalla.
o -d Número de líneas que se van a editar.
o +número de líneas Número de la línea a partir de la cual se va a editar.
o +/path Path correspondiente al fichero que se va a editar.
o Fichero(s) Nombre o nombres de los ficheros que se van a editar.
Ejemplo:
more -c10 +25 +/usr/share/doc/gedit/README
mostrará 10 líneas, empezando por la 25, del fichero llamado README que se encuentra en el directorio
/usr/share/doc/gedit. Podemos usarlo con otros comandos para paginar la salida por pantalla.
Profesor: José Luis García - Dpto. Informática Página 4
I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

Comando: less
Descripción: muestra archivos en pantalla paginando la salida, permite volver atrás.
Opciones:
Ejemplo: less prueba.txt

EJERCICIOS 3

1. Observa el resultado de escribir los comandos ls -la /dev. Como puedes ver el listado es demasiado extenso y
aunque movamos la barra de desplazamiento vertical de la ventana del terminal, no podemos llegar al principio
del listado.
2. Observa el resultado de ls -la /dev | more o ls –la /dev | less. Comprobarás que es más fácil ver el listado de
archivos.

Comando: cp
Descripción: El comando cp se utiliza para copiar ficheros. Su sintaxis es:
cp [-i] fichero_entrada fichero_destino
Opciones:
o -i Origina que el comando requiera una confirmación, en el caso de que el fichero destino ya exista; es decir,
pregunta si se desea hacer la copia.
o -r PARA COPIAR UN DIRECTORIO COMPLETO.
o fichero_entrada Nombre del fichero que se va a copiar.
o fichero_destino Nombre del fichero en el que se va a copiar el contenido del fichero de entrada

En el caso de que el fichero destino ya exista, lo va a machacar, por lo que es recomendable utilizar la opción -i para que
nos pida confirmación y así evitar posibles errores.
Ejemplo: cp -i datos datos.new
Cuando un usuario copia un archivo, éste se convierte en propietario del nuevo archivo.

Comando: rm
Descripción: El comando rm se utiliza para borrar ficheros. La sintaxis de este comando es:
rm [-i] fichero(s)
Opciones:
o -i Origina que el comando requiera confirmación para ejecutarse.
o fichero(s) Nombre o nombres de los ficheros que se van a borrar.
La opción -i se debe de utilizar para pedir confirmación antes de proceder al borrado
Ejemplo: rm /home/usuario/prueba.txt

Comando: mv
Descripción: El comando mv se utiliza para renombrar ficheros; es decir, el contenido del fichero no cambia, sólo
cambia el nombre; o para mover ficheros entre directorios (se verá en el capítulo siguiente). La sintaxis del comando es:
mv [-i] fichero entrada fichero destino
Opciones:
o -i Origina que el comando requiera una confirmación, en el caso de que el fichero destino ya exista; es decir,
pregunta si se desea hacer la copia.
o fichero entrada Nombre del fichero que se va a copiar.
o fichero destino Nombre del fichero en el que se va a copiar el contenido del fichero de entrada.
Profesor: José Luis García - Dpto. Informática Página 5
I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

En el caso de que el fichero destino exista, lo sobrescribe.


Ejemplo: mv texto.txt texto1.txt (Renombra el fichero texto.txt a texto1.txt)

EJERCICIOS 4

1. Escribe el comando cp -i /etc/resolv.conf ejercicio5.


2. Escribe el comando ls y comprueba que se ha copiado el fichero "resolv.conf" a tu directorio de trabajo con el
nombre "ejercicio5".
3. Copia los ficheros /etc/passwd /etc/fstab a tu directorio de trabajo.
4. Cambia sus nombres a "claves" y "tabla", respectivamente.
5. Borra los tres ficheros: "claves", "tabla" y "ejercicio5".
6. Copia el directorio "/etc/apt" a tu directorio de trabajo con el nombre "apt_copia".
7. Comprueba con ls /etc/apt y ls apt_copia, que el contenido de los dos directorios coincide.
8. Cambia el nombre del directorio "apt_copia" a "apt_copia_2".

Comando: cd
Descripción: Sirve para cambiar de directorio. Su sintaxis es: cd directorio
Opciones:
Ejemplo:
cd .. (Nos mueve al directorio padre)
cd /home/usuario/ (nos mueve al directorio /home/usuario)
cd / (nos mueve al directorio raíz)

Comando: mkdir
Descripción: Crea un directorio. Su sintaxis es: mkdir directorio
Opciones:
Ejemplo: mkdir carpeta1

Comando: rmdir
Descripción: Borra un directorio. Su sintaxis es rmdir directorio.
Opciones:
-r Borra recursivamente el directorio aunque éste no esté vacío
Ejemplo: rmdir carpeta1

EJERCICIOS 5

1. Crea en tu directorio de trabajo los subdirectorios: "carpeta1", "carpeta2" y "carpeta3".


2. Usando "cd" colócate en el directorio "carpeta1" y crea dentro de él los subdirectorios: "carpeta11" y
"carpeta12".
3. Crea los subdirectorios: "carpeta2/carpeta21" (es decir, crea dentro del directorio "carpeta2" el subdirectorio
"carpeta21") y "carpeta2/carpeta22".
4. Crea los subdirectorios: "carpeta3/carpeta31", "carpeta3/carpeta32" y "carpeta3/carpeta33".

Profesor: José Luis García - Dpto. Informática Página 6


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

5. Borra el subdirectorio "carpeta2/carpeta21".


6. Cambia el nombre del subdirectorio "carpeta22" a "carpeta222".
7. Copia el directorio "carpeta2" dentro de la carpeta "carpeta3".
8. Borra todos los directorios que has creado.
9. Comprueba con ls que han desaparecido los directorios que hemos borrado.

Comando: ln
Descripción: En Linux pueden definirse enlaces a elementos del sistema de ficheros (accesos directos) para poder
acceder a ellos desde distintos lugares en la jerarquía. Un enlace no es más que un nombre que apunta a un determinado
recurso del sistema de ficheros, sea físico o lógico. Debido a esto se clasifican en dos tipos:

a) Fuertes o duros: son aquellos que no se diferencian en nada del fichero original. Realmente un fichero existe
físicamente (ocupa una zona en algún dispositivo de almacenamiento) y su nombre no es más que un enlace
fuerte a él. Si se creara otro enlace fuerte, solo se estaría apuntando a la misma zona física a través de otro
nombre. De esta forma se obtendrían dos o más copias lógicas de un fichero, pero solo habría una copia física.
De aquí se deduce que un fichero no desaparece físicamente hasta que no se borren todos los enlaces fuertes
que apunten a él. Los enlaces duros a un fichero determinado se almacenan en la estructura del i-nodo que lo
representa.
b) Simbólicos o débiles: son apuntadores al nombre del fichero, no a su contenido. Si desaparece el fichero
original (todos los enlaces duros a este) los enlaces simbólicos correspondientes quedan inconsistentes.

No se pueden crear enlaces fuertes a directorios, ni a ficheros en particiones distintas. Para crear enlaces se emplea el
comando ln.

Sintaxis:ln [opciones] fichero_o_directorio [nombre_del_enlace]


Opciones:
-s se utiliza para crear enlaces simbólicos en lugar de fuertes (como es por defecto).

Nota: el nombre del fichero o el directorio al que queremos hacer el enlace debe escribirse con todo el path, es decir,
"/ruta_al_archivo/archivo"
Ejemplo:
ln -s /home/pepe/public_html/raiz.html index.html Hace que al acceder al fichero "index.html"
nos envíe al fichero "raiz.html".
ln -s /usr/bin /binarios Si entramos en el directorio "/binarios" nos enviará al directorio "/usr/bin"

EJERCICIOS 6

1. Haz un enlace débil de "/home/usuario/enlace" a "/home/usuario/carpeta3".


2. Haz ls -la enlace y ls -la carpeta3. Comprueba que su contenido es el mismo.
3. Haz ls -l y comprueba que en el lista aparece enlace -> /home/usuario/carpeta3.
4. Crea un directorio llamado "lll" dentro del directorio "enlace".
5. Comprueba que en el directorio "carpeta3" también aparece ahora ese directorio, es decir, lo que hagamos en
una carpeta se verá reflejado en la otra, y viceversa.

Profesor: José Luis García - Dpto. Informática Página 7


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

Comando: file
Descripción: muestra el tipo de archivo sobre el que se aplica este comando. Su sintaxis es: file archivo
Opciones:
Ejemplo: file prueba.txt

Comando: touch
Descripción: actualiza la fecha de un archivo a la fecha actual. Su sintaxis es: touch archivo
Opciones:
Ejemplo: touch prueba.txt

Comando: find
Descripción: busca el directorio donde se encuentra un determinado archivo cumpliendo unas condiciones.
Su sintaxis es: find <directorio en el que buscar> <expresión>
Opciones:
o -name: indica a find que busque el archivo que se indica justo después de –name.
o -print: indica a find que visualice el nombre del archivo por pantalla una vez hallado.
o -user: find seleccionará los archivos que pertenezcan al usuario que se indique.
o –mtime –n, +n: indica a find que busque los archivos para los que hayan transcurrido más o menos de n días desde
su última actualización.
o –size +m,-m: indica a find que busque archivos que sean mayores o menores de m bloques.
o Para más información teclea man find.
Ejemplo: find / -name prueba.txt

Comando: head
Descripción: Muestra la parte inicial de un archivo. Su sintaxis es: head [-n] archivo
Opciones:
-n: número de líneas que queremos que muestre
Ejemplo: head -5 prueba.txt

Comando: tail
Descripción: Muestra las últimas líneas de un documento. (10 por defecto)
Opciones:
-n: número de líneas que queremos que muestre.
Ejemplo: tail -20 prueba.txt

Comando: wc
Descripción: Contador de líneas, palabras y caracteres de un archivo. Su sintaxis es: wc [-lwc] [archivo(s)]
Opciones:
o -l: Visualiza el número de líneas.
o -w: Visualiza el número de palabras.
o -c: Visualiza el número de caracteres.
Ejemplo: wc –l prueba.txt

Comando: cmp
Descripción: Compara dos archivos. Por defecto, no indica nada si ambos son iguales y si son diferentes, muestra en
pantalla el punto donde lo son. Su sintaxis es: cmp archivo1 archivo2
Opciones:
-l: imprime el punto donde ambos son diferentes
Ejemplo: cmp –l prueba.txt prueba1.txt

Profesor: José Luis García - Dpto. Informática Página 8


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

Comando: nl
Descripción: Muestra un archivo numerado por líneas.
Opciones:
Ejemplo: nl prueba.txt

Comando: csplit
Descripción: Divide un archivo en secciones determinadas por líneas de texto. Su sintaxis es: csplit <archivo>
<nº líneas>. Una vez dividido el archivo obtenemos dos archivos xx00 que contiene las n primeras líneas y xx01
que contiene el resto del archivo.
Opciones:
Ejemplo: csplit prueba.txt 9

Comando: cut
Descripción: Imprime secciones de líneas de un archivo. Su sintaxis es: cut [opciones] <archivo>
Opciones:
1. -b: bytes que queremos mostrar
2. -c: caracteres que queremos mostrar
Ejemplo: cut –b=1 texto.txt (imprime el 1º byte de cada línea)

Comando: diff
Descripción: Busca diferencias entre dos archivos. Su sintaxis es: diff [opciones] <archivo1>
<archivo2>
Opciones:
3. –a: trata ambos ficheros como si fueran de texto y los compara línea por línea.
Ejemplo: diff –a texto1.txt texto2.txt

Comando: tac
Descripción: Visualiza un archivo con sus líneas invertidas.
Opciones:
Ejemplo: tac texto1.txt

Comando: uniq
Descripción: Borra las líneas duplicadas de un archivo ordenado.
Opciones:
Ejemplo: tac texto2.txt

EJERCICIOS 7

1. Comprueba el funcionamiento de los comandos file y touch.


2. Encuentra el archivo resolv.conf e indica en qué directorio se encuentra.
3. Muestra en pantalla la parte inicial y final de un archivo de texto que hayas creado, para ello teclea en la línea
de comandos gedit prueba.txt y escribe algunas líneas en su interior.
4. Sobre el archivo que acabas de crear, cuenta el número de caracteres que tiene.
5. Muéstralo por pantalla numerando cada una de las líneas.
6. Divide este archivo en dos, debiendo tener el primer archivo las 5 primeras líneas, y el otro, el resto.
7. Compara el archivo prueba.txt con el primero de los archivos obtenidos en el punto anterior. ¿Qué resultado
obtienes?. Indica si el comando diff muestra otro resultado.
8. Muestra por pantalla el archivo prueba.txt al revés.

Profesor: José Luis García - Dpto. Informática Página 9


I.E.S. Inca Garcilaso - Montilla (Córdoba)
Sistemas Operativos en entornos Monousuario y Multiusuario (LINUX) Tema 5. Manipulación de archivos y directorios
1º CFGM – Explotación de Sistemas Informáticos

Comando: gzip
Descripción: gzip es el compresor por excelencia en cualquier sistema Unix.
También existe otro compresor, bzip2, que a pesar de ser mas lento es bastante mas eficiente. La sintaxis es
prácticamente la misma, solo que el sufijo del archivo es .bz2
En cualquier caso, la forma estándar de juntar y comprimir varios archivos consiste en hacer un .tar con todos ellos y
luego comprimir el archivo con gzip
Opciones:
4. Comprimir un archivo: gzip [-n] archivo (siendo n un numero del 1 al 9), 1 mas rapido, 9 mas comprimido.
5. Descomprimir un archivo: gzip -d archivo.gz
Ejemplo: gzip -7 texto.txt (comprime) / gzip –d text.txt.gz (descomprime)

Comando: tar
Descripción: tar es la forma estándar de hacer un volumen de archivos ( un archivo que contiene varios archivos ). Hay
que notar que tar no comprime el volumen resultante. Somos nosotros los que elegimos el algoritmo de compresión
mediante otro programa (normalmente gzip).
Sintaxis básica: tar [OPERACIONES Y OPCIONES] archivos _ involucrados
Opciones:
Creación de un volumen: tar -cf archivo.tar archivo_o_dir1 [archivo_o_dir2] ...
Añadir archivos a un volumen: tar -rf archivo.tar archivo_o_dir1 [archivo_o_dir2] ....
Extraer archivos de un volumen: tar -xf archivo.tar [archivo_o_dir1] [archivo_o_dir2] ....
Listar los archivos contenidos: tar –tf archivo.tar
Ejemplo:

Comando: gunzip
Descripción: Es muy común encontrarse en internet este tipo de formato y es tan fácil de descomprimir con solo poner
en el interprete de comandos: gunzip nombre_del_fichero.gz
Opciones:
Ejemplo:

EJERCICIOS 8

1. Comprueba el funcionamiento de los comandos


2. Empaqueta el directorio "carpeta_3" y todo su contenido (incluidos los subdirectorios) en el fichero
"comprimido.tar".
3. Borra todos los directorios que has creado.
4. Comprueba con ls que han desaparecido los directorios que hemos borrado.
5. Desempaqueta el fichero "comprimido.tar" en tu directorio de trabajo.
6. Comprueba que ha vuelto a parecer el directorio "carpeta3" con todo su contenido (incluidos subdirectorios).
7. Vuelve a borrar el directorio "carpeta3".
8. Comprime el fichero "comprimido.tar" con "gzip -9 comprimido.tar". Haz ls y comprueba lo que ha ocurrido
con el fichero ".tar"

Profesor: José Luis García - Dpto. Informática Página 10


I.E.S. Inca Garcilaso - Montilla (Córdoba)

También podría gustarte