Você está na página 1de 6

PRACTICA 4 COMANDOS LINUX

Fecha: __________________ Integrantes:____________________________________________

UTILITARIOS DE MANIPULACIÓN DE ARCHIVOS


1) mkdir: creación de directorios y archivos vacios
mkdir (MaKe DIRectory, crear directorio). Su sintaxis:
mkdir [opciones] <directorio> [directorio…]
La opción –p:
 Crea directorios padre. Si no se especifica esta opción y los directorios padre no existen, mkdir falla. Mostrando
que dichos directorios no existen
 Retorna silenciosamente si el directorio que se desea crear ya existe. Similarmente, si no se especificó la opción –
p, mkdir devuelve un mensaje de error. Quejándose que el directorio ya existe

Escoger un directorio principal, realizar lo siguiente y explicar los pasos aplicados:


1- mkdir pepito
_______________________________________________________________________________

2- mkdir –p /tmp/prueba sistemas_operativos


___________________________________________________________________________________

___________________________________________________________________________________________________

3- crear un subdirectorio con el nombre de mantenimiento en el subdirectorio samba que se encuentra en el directorio
principal /etc, todo hacerlo desde el directorio raíz. Escribir cual es la línea de comando para realizar lo anterior.
________________________________________________________________________________________

2) touch: cambiar la fecha de acceso y/o modificación a un archivo


touch no está orientado a la creación de archivos sino a la actualización de la hora de acceso y modificación de los
archivos. Sin embargo, touch crea los archivos mencionados como archivos vacíos si no existen. Este comando es útil
cuando se necesita recompilar cierta parte de un programa evitando compilar todo el programa completo, sólo aquellos
sectores modificados

La sintaxis es: touch [opciones] archivo [archivo…]


Opciones:
 -a: Cambia la fecha de acceso de archivo
 -c: No crea archivo
 -m: Cambia la fecha de modificación de archivo
 -r archivo_referencia: Utiliza la fecha correspondiente a archivo_referencia como el nuevo valor para la(s)
fecha(s) modificada(s).
 -t time: Utiliza la fecha especificada como el nuevo valor para la(s) fecha(s) modificada(s). Dicho argumento debe
ser un número decimal de la forma. El cambio de la fecha y tiempo es para el año actual. AAAAMMDDhhmm
 -d fecha : Usar fecha en lugar de la fecha actual. El formato de fecha es el siguiente: AAAAMMDD

Ejemplo con un archivo con nombre lmhosts


 Ingresar al directorio /etc, listar con la opción –l para observar cual es la fecha que tiene el archivo.
[root@nancy etc]#ls -l hosts
-rw-r--r-- 1 root root 158 ene 12 2010 hosts

 Cambiar la fecha del archivo por el 10 de mayo del 2011


[root@nancy etc]#touch –d 20110510 hosts

 Listar con la opción –l para observar cual es la fecha que tiene el archivo.
[root@nancy etc]#ls -l hosts
Ing. Esp. María Nancy Espinel Calixto
Página 1
PRACTICA 4 COMANDOS LINUX

-rw-r—r--. 1 root root 158 may 10 2011 hosts

Si SS no es especificado, el año SSAA es tomado como perteneciente al intervalo 1969-2068.


Si ss no se especifica, se toma como valor 0. Es posible especificarlo dentro de los valores 0-61 así que es posible dar
valores de cambio ("salto") de minuto.
Si el primer archivo fuera un argumento válido para la opción -t y no se da fecha con ninguna de las opciones -d, -r o -t y el
argumento `--' no se da, este argumento se interpreta como la fecha para otros archivos en vez de el nombre de un
archivo.
Si tanto la fecha de acceso como de modificación a la fecha actual, touch puede cambiar la fecha de los archivos que el
usuario que los ejecuta tenga permisos de escritura en ellos, aunque no sean suyos. De cualquier otra manera, el usuario
ha de ser el dueño de los archivos
4- Realizar y explicar mencionando desde el directorio principal que lo hizo ls línea de comando:
touch prueba1 /tmp/prueba2
________________________________________________________________________________

Realizar dos ejemplos donde se utilicen algunas opciones del comando touch y explicarlos:
5- __________________________________________________________________________________________
__________________________________________________________________________________________
6- __________________________________________________________________________________________
__________________________________________________________________________________________

3) rm: borrar archivos o directorios


Reemplaza a los comandos del y deltree de DOS, y agrega más opciones. Sintaxis:
rm [opciones] <archivo|directorio> [archivo|directorio…]

Las opciones incluyen:


1. -r, o R: borra recursivamente. Esta opción es obligatoria para borrar un directorio, vacío o no. Sin embargo,
también se puede usar el comando rmdir para borrar directorios vacios.
2. -i: pedir confirmación antes de cada supresión.
3. -f: la opuesta de –i, fuerza la supresión de los archivos o directorios, incluso si el usuario no tiene derecho de
escritura sobre los archivos.

7- Realizar y explicar, mencionando desde cual directorio lo está aplicando:


rm -i tmp/archivo2 archivo1 _________________________________________________________
______________________________________________________________________________________________

4) cp: copiar archivos y directorios


Reemplaza a los comandos copy, xcopy de DOS, y agrega más opciones. Sintaxis:
cp [opciones] <archivo|dir.> [archivo|dir...] <destino>

Algunas opciones:
● -R: copiar recursivamente, obligatoria para copiar un directorio, incluso si está vacío.
● -i: pedir confirmación antes de sobre-escribir cualquier archivo que pueda sobre-escribirse
● -f: lo opuesto de -i, reemplaza cualquier archivo existente sin pedir confirmación alguna
● -v: modo “verboso”, reporta todas las opciones que realiza cp

Escribir los pasos realizados:


8- Crear un archivo con nombre sistemas en el editor de texto vi , guardarlo en la subdirectorio de sistemas_operativos
ubicada en el directorio /home, si no esta debe crearlo.
_______________________________________________________________________________________________
Ing. Esp. María Nancy Espinel Calixto
Página 2
PRACTICA 4 COMANDOS LINUX

9- Copiar el archivo sistemas en el directorio /tmp


____________________________________________________________________________________________

5) mv: mover o renombrar archivos


mv [opciones] <archivo|dir.> [archivo|dir...] <destino>

Algunas opciones:
● -f: fuerza la operación – no hay advertencia alguna en caso de que la operación sobre-escriba un archivo que ya
existe.
● -i: lo contrario – pedir confirmación al usuario antes de sobre-escribir un archivo existente.
● -v: modo verboso, reportar todos los cambios y la actividad

Realizar y escribir los pasos realizados:

10- Mover el archivo de texto sistemas del directorio /tmp solicitando confirmación, al directorio
/home/sistemas_operativos
___________________________________________________________________________________________
11- Crear un subdirectorio con el nombre de pepe en el subdirectorio sistemas_operativos, luego cambiarle el nombre de
pepe por pepito con el comando mv
_____________________________________________________________________________________________
_____________________________________________________________________________________________
12- Desde la raíz mover sin pedir confirmación todos los archivos corrientes cuyo nombre comience con pepito con todo
el subdirectorio sistemas_operativos al directorio /tmp mostrar cada operación llevada a cabo
_____________________________________________________________________________________________

6) COMANDO find
Se utiliza este comando para buscar archivos dentro de una jerarquía de directorios. Pero además de buscar archivos tiene
la posibilidad de realizar operaciones con o sobre los archivos que encuentra.

Su sintaxis básica es la siguiente:


find [camino] [expresión]
Donde el parámetro camino indica la ruta o subdirectorio desde donde se deberá iniciar la búsqueda. Mientras que el
parámetro expresión indica distintas cosas como la especificación del archivo que se busca así como la operación que se
deberá realizar con el archivo una vez encontrado.

Opciones:
 -type: especifica qué tipo de archivo se quiere buscar. Los tipos de archivos que se le pueden poner para buscar son
los siguientes:
o d - directorios
o f - archivos
o l - enlaces simbólicos
o s - sockets
 -perm: se busca archivos que posean los permisos que se indican. Si se pone delante de los permisos "-" se busca
aquellos que no posean esos permisos.
 -user: se buscan archivos cuyo propietario sea el usuario indicado.
 -group: se buscan archivos que sean miembro de determinado grupo.
 -nouser: se buscan archivos cuyo propietario sea el usuario indicado.
 -nogroup: se buscan archivos que sean miembro de determinado grupo.
 -size: busca archivos de un determinado tamaño.
 -newer: busca archivos que sean más nuevos que el archivo 1 pero más antiguos que el archivo 2..
Ing. Esp. María Nancy Espinel Calixto
Página 3
PRACTICA 4 COMANDOS LINUX

 -mtime: busca archivos que han sido modificados antes de x d?s. Si pone el caracter "-" antes de los dias se buscan
archivos en ese mismo día o antes que han sido modificados. Si se pusiese "-mtime -5" se buscarían aquellos archivos
que han sido modificados hace 5 días. Si se pone el carácter "+" se buscan archivos que no han sido modificados en
los días pasados como parámetros.

Ejemplo 1:
find /etc -name passwd -print

En este caso, el parámetro /etc es el camino o ruta desde la cual se iniciará la búsqueda. Mientras que el siguiente
parámetro, que consiste de varias partes indica primeramente que la búsqueda se realizará por nombre de archivo (-name
passwd) y que el archivo deseado se llama passwd. Por último se indica lo que se debe hacer al encontrar el archivo que es
mostrar su nombre (-print).
13- ¿Cuántos archivos encontró?___________________________________

 Ejemplo 2: Buscar el archive ifconfig desde el directorio raiz (/):


find / -name "ifconfig"
 Ejemplo 3: Buscar archivos en el directorio /etc cuyo nombre sea "DIR_COLORS" sin tener en cuentas mayúsculas ni
minúsculas:
find /etc -iname "dir_colors"
 Ejemplo4: Buscar archivos cuya primera letra sea A, B o C en el directorio /etc:
find /etc -name "[ABC]*"
 Ejemplo 5: Buscar archivos que terminen en "wd" en el directorio /etc, sin importar las mayúsculas y minúsculas y
redirigir la salida al archivo find.log:
find /etc -iname "*wd" > find.log
 Ejemplo 6: Realizar lo mismo de lo anterior solo que mandando los mensajes de error al archivo findErrors.log
find /etc -iname "*wd" 2>findErrors.log
 Ejemplo 7: La misma búsqueda que la anterior haciendo que no se muestren los mensajes de error por la pantalla:
find /etc/ -iname "*wd" 2>/dev/null
 Ejemplo 8: Buscar los directorios que hay en el subdirectorio sysconfig que se encuentra en /etc:
find /etc/sysconfig -type d
 Ejemplo 9: Buscar en el directorio /etc los directorios que empiezan por a:
find . -type d -name "a*"
 Ejemplo 10: Buscar el archivo httpd.conf en el directorio /etc
find /etc -type f -name "httpd.conf"
 Ejemplo 11: En este ejemplo find nos mostrará los archivos dentro de la carpeta del usuario (~) que superen los
10Mb. Podemos encontrar archivos que superen cierto tamaño.
find ~ -size 10M -type f
 Ejemplo 12: Podemos encontrar archivos que hayan sido modificados en los n últimos días. En este ejemplo se
muestran los archivos que han sido modificados en los últimos 2 días.
find . -ctime -2 -type f.
 Ejemplo 13:
find /etc -name passwd -print 2> /dev/null
En este segundo caso, se suprimen los mensajes de error redireccionando éstos al dispositivo /dev/null por medio del
operador 2>. De esta forma se imprimen solo los nombres de los archivos encontrados y no los errores que se van
generando durante la búsqueda.

Como se mencionó, find tiene muchas opciones en cuanto a sus parámetros y se debe consultar la ayuda para obtener
información sobre todos ellos. Sin embargo vale la pena mencionar algunos de ellos tanto para conocer su funcionamiento
como para comprender la forma en que se especifican sus parámetros. La siguiente tabla muestra algunas de los
parámetros que pueden usarse:

Ing. Esp. María Nancy Espinel Calixto


Página 4
PRACTICA 4 COMANDOS LINUX

Opción Funcionamiento
Se buscarán los archivos cuyo usuario sea nombre. Ejemplo:
-user nombre
find / -name unix100 -print 2> /dev/null
Se buscarán los archivos cuyo grupo sea grupo. Ejemplo:
-group grupo
find / -group unix100 -print 2> /dev/null
Selecciona archivos cuyo tamaño es exactamente el número especificado. Se puede agregar una
de las letras [bckw] para indicar que el número representa bloques, bytes, kilobytes, o palabras
-size tamaño de 2 bytes, respectivamente.
Ejemplo:
find /bin -size 20c -print 2> /dev/null

-size -tamaño Selecciona archivos cuyo tamaño es menor que el número especificado.
Ejemplo:
find /bin -size -20c -print 2> /dev/null

-size +tamaño Selecciona archivos cuyo tamaño es mayor que el número especificado.
Ejemplo:
find /bin -size +20c -print 2> /dev/null
Se buscarán los archivos cuyo tipo sea tipo, donde algunos de los valores para este pueden ser d
-type tipo para directorios, f para archivos normales, o l para enlaces. Ejemplo:
find /bin -type d -print 2> /dev/null
Como se mencionó anteriormente, find nos permite no solo encontrar archivos sino realizar operaciones con ellos. Para
esto, se debe seguir exactamente la notación que se indica a continuación:
Se utiliza el parametro -exec seguido de un espacio y el comando a realizar sobre cada archivo que se encuentre y después
{} \;.

 Ejemplo 14: En este ejemplo se buscan todos los archivos cuyo nombre termina con *wd en el directorio /etc y
muestra el contenido de cada uno de ellos.
find /etc -name "*wd" -exec cat {} \;
 Ejemplo 15:Buscar en el directorio /etc el archivo "passwd" y buscar dentro si hay un usuario llamado root:
find /etc -name "passwd" | xargs grep "root"
 Ejemplo 16:Hacer la misma búsqueda evitando que se muestren mensajes de error por pantalla
find /etc -name "passwd" 2>/dev/null | xargs grep "root"

El comando xargs lo que permite es la ejecución de un comando tomando como parámetro de entrada la entrada
standard. Para el ejemplo anterior lo que haría sería buscar el archivo "passwd" dentro del directorio /etc y en el caso de
encontrar alguna coincidencia se ejecutaría el comando grep que buscaría la cadena de texto "root". En el caso de que se
produzcan errores en la busqueda del archivo "passwd" debido por ejemplo a la falta de permisos para acceder a un
determinado directorio estos se mandarán a /dev/null y no veríamos dichos mensajes por la pantalla.

 Ejemplo 17:Hacer la misma búsqueda que en el caso anterior pero esta vez que se muestren todos los usuarios del
archivo passwd excepto "root":
find /etc -name "passwd" 2>/dev/null | xargs grep -v "root"
 Ejemplo 18:Borrar los archivos que empiecen por "A" en el directorio actual y hacia abajo:
find . -type f -iname "A*" | xargs rm
 Ejemplo 19:Lo mismo que en el caso anterior pero que se pida confirmación antes de borrar
find . -type f -name "A*" -exec rm -i {} \;
 Ejemplo 20:La opción -exec permite realizar lo mismo que si se pone xargs pero sin usar un pipe. La sintaxis de -exec
es la siguiente:
find path -name nombreArchivo -exec comandoAEjecutar {} \;

Ing. Esp. María Nancy Espinel Calixto


Página 5
PRACTICA 4 COMANDOS LINUX

Cuando se usa la opcion -exec el comando find todos los resultados obtenidos con a exec para que trabaje con cada uno.
Lo que pasa es que en algunos sistemas hay un límite en la longitud de la cadena que se le pasa a exec por lo que al rato
de estar ejecutándose esta búsqueda termina por error. Para estos casos es mejor utilizar xargs.
 Ejemplo 21: Buscar archivos dentro del nuestro directorio de trabajo que contengan sh en su nombre y ver su
información.
find $HOME -name "*sh*" | xargs ls -l
El "$HOME" es una variable del sistema que define donde se encuentra el directorio de trabajo de un usuario. El caracter
"~" realiza la misma función.
 Ejemplo 22:Buscar aquellos archivos que han sido modificados en los últimos 14 días:
find . -type f -mtime -14
Si se quiere buscar más de un archivo con el comando find se hace usando el parámetro -o. Lo que se consigue con este
parámetro es hacer búsquedas en las que se cumpla o una condición u otra. Por ejemplo para buscar todos los archivos
con extensión "xml" y "xsl" del directorio actual se haría de la siguiente forma:
find . -name "*.xml" -o -name "*.xsl"

 Ejemplo 23: Desde raíz (/) buscar todos los archivos de ejecutables con extensión .exe
find / -name *.exe
EJERCICIOS:
Para cada ejercicio, escribir el o los comandos y los parámetros que requiere éste para realizar la tarea descrita.
14- Cuales archivos en el directorio /etc son de tamaño igual a 30 bytes?
15- Cuales archivos en el directorio /etc/selinux son de tamaño menor a 1 byte?
16- Cuales archivos en el directorio /etc son de tamaño mayor a 900 kilo bytes?
17- Consulta el manual de find para determinar cómo mostrar los nombres de los archivos que se tienen en la cuenta que
se modificaron en los últimos 30 días.
18- Consulta el manual de find para determinar cómo mostrar los nombres de los archivos que se tienen en la cuenta que
se modificaron hace más de 15 días.
19- Consulta el manual de find para determinar cómo mostrar los nombres de los archivos que se tienen en la cuenta que
se modificaron hace de 5 días.
20- Mostrar el nombre de todos los archivos que se tienen en la cuenta cuyo nombre termine con el símbolo ~. Si no
tienes ninguno, crear 4 y vuelve a hacer el ejercicio. (Nota: Los archivos de respaldo que crea vi tienen esta
terminación.)
21- Mostrar el contenido de los archivos que se encontraron en el paso anterior mostrando una pantalla de información a
la vez.
22- Crear un directorio que se llame para_borrar y copiar los archivos que se mostraron en el paso anterior.
23- Utilizar find para borrar los archivos del directorio que se creó en el paso anterior.
24- Explicar cuál es la función de los parametros -amin y -used .
25- Dar un ejemplo del uso de los parámetros del ejercicio anterior
26- Buscar los siguientes archivos y escribir el resultado
Ifconfig, hosts, hostname, resolv.conf, named.conf

Ing. Esp. María Nancy Espinel Calixto


Página 6

Você também pode gostar