sábado, 5 de julio de 2008

laboratorio # 3.2

1. Creación de archivo de texto y uso del redireccionamiento:
Crea en el directorio dir1 un archivo datos1 de 5 líneas de texto con el nombre, apellidos, dirección, teléfono y fecha. Para ello, redireccione la salida estándar a un archivo usando el símbolo ">". Visualízalo en pantalla.
# cat >dir1/datos1(salir con ctrl.-d)
# cat dir1/datos1
Cat: edita un archivoexistente o crea un archivo.

Añade al archivo anterior una sexta línea con un mensaje de despedida. Visualícelo en pantalla.
# cd dir1se llama al directorio dir1
# cat >> datos1esta sentencia agrega sobre un archivo que ya cree.

Escriba el mensaje de despedida
CTRL-D
# cat datos1despliega la información contenida en datos1
#ls -l > datos2
Redireccionando a un archivo de texto.

También puede ser redireccionada la entrada estándar usando el símbolo "<" para crear un nuevo archivo.
#cat<>> dato3: redirecciona la información de datos 2 a un archivo nuevo como los es dato3
# cat datos1 datos2 datos3: se visualiza los archivos datos1, datos2 y datos3.Para ver que contiene cada uno de ellos.

Visualizar los datos del archivo con more y con less.
# more datos2, se visualizan todos los datos a la vez
# less datos2 ,
Se visualizan poco a poco.

2. Enlaces Logicos:
# ln datos1 datos4, se enlaza, y se despliega todo lo que tenga datos1 a datos 4
# cat datos4: se muestran los datos que contiende dicho archivo

a. Si usamos #ls-i, veremos que los dos archivos tienen i-nodos diferentes, en efecto.
Pero qué pasa si modificamos el archivo datos4?: se modifican los 2 archivos y se actualizan.
# ls –l(comparé el tamaño de datos1 con datos4)
# cat >> datos3
b. Indique una orden que permita ver el número de enlaces que tiene los archivos "datos1".
#ls -l datos1,se ve el enlace que se creo,rw-rw—r—1 user1 user1 39 jun 21 08:44 datos1

¿Se puede hacer un enlace de un directorio existente? Por ejemplo ln original dir1, pruébelo!
R: No puede hacerse enlaces fuertes para un directorio existente.

Y si el enlace es simbólico ¿Se puede hacer? ¿Qué aspecto tiene?
R: Dice que no procede, ya que entre fichero no se puede, ya que no tiene ficheros (en el caso de ahora si dejo)
c. ¿Qué sucede si se borra el archivo "datos1"? ¿Permanece el enlace simbólico?
R: No permanece el enlace simbólico ya que datos1 ha sido borrado solo queda el archivo datos 4 que tambien habia sido creado.

3. Mover y copiar archivos de texto:
Copie el archivo datos3 en el directorio dir1 con nombre datos4. ¿Qué relación habrá entre datos1 y datos4: copia o enlace lógico? ¿Podría comprobarlo?
Solo se copio, ya que el contenido al listar tiene el mismo tamaño,1 es copia y enlace es más de uno.
# cp datos3 datos4
# mv datos2 ../PRUEBA2 se mueve datos2 al directorio PRUEBA2

Mueva el archivo datos3 al directorio PRUEBA2 con el nombre datos5. ¿Qué relación habrá entre datos1 y datos5: copia o enlace lógico? ¿Podría comprobarlo?
R:La relacion entre ambos es solo una copia.
$ mv datos3 ../PRUEBA2/datos5
# mv datos4 datos6: este formato cambia el nombre de un archivo
Cambie el nombre de datos2 por del PRUEBA2.1 sin cambiarlo de directorio. ¿Qué pasó?
# mv ../PRUBA2/datos2 ../PRUEBA2/PRUEBA2.1:
R: se mando un correo que dice: in/var/sool/mail/root.
Mueva todos los archivos del directorio dir1 que empiecen por datos al directorio
PRUEBA2
# mv datos* ../PRUEBA2: esta sentencia mueve todos los archivos que empiecen con el nombre dato, del directorio dir1, al directorio prueba2.

Añada el contenido del archivo datos1 a datos1. ¿Se puede?:
# cd ~/PRUEBA2
# cat datos1 >> datos1
R: los ficheros de entrada y salidas son iguales
Añada el contenido de datos5 a datos1. ¿Se puede?, si se pueden copiar ya que son diferentes.

4. Realizar búsqueda de caracteres
a) Buscar las líneas que contengan la palabra root del archivo /etc/passwd.
# grep root /etc/passwd, se da la búsqueda del número de líneas del root, de cualquier lado.
b) Liste los datos de aquellos cuyo nombre empiece por "A" y su teléfono acabe por “00”
# grep “^A” agenda1 grep “00$”
Este dato no existe, pero esta sentencia permite obtener todos los datos de agenda que contengan la descripción 00$. Y se buscan los caracteres que cotengan mayúsculas.
c) Liste el número cuentas que no sean de root. :
Salen todos las contraseñas que existen en el sistema.
# grep -v “root” /etc/passwd
d) Liste todos los archivos del directorio /etc que se han “host”
# grep -v “host”
Se buscan todos los datos que tengan la palabra host, se lista el contenido del directorio de esta forma:ls/etc/Grez *cfg/lp, ls/etc > directorio grep-i “host”.

5. Contar el número de líneas, palabras y caracteres
# wc ../PRUEBAS/datos1
#wc -l/etc (número de líneas del directorio etc)
Se contabiliza el número de líneas, palabras y caracteres que estan conectadas a los archivos, datos y directorios. Se obtiene: 942286, el 9 es el número de líneas, 42 es la cantidad de palabra que se tenga, 286 caracteres.
Ls/etc/wc: cuenta la cantidad de directorios

Muestra en pantalla el contenido de datos1 con sus líneas numeradas. Repite la acción anterior redirigiendo la salida al archivo datos1.num
# cat -n datos1
Se cuentan los números de líneas y salieron 9
# cat -n datos1 > datos1.num
Se reciben los datos 1, pero en este caso no aparecen ya que los datos son los mismos.

6. Uso de filtro o pipe ()
¿Cómo podemos visualizar tranquilamente la salida antes de que desaparezcade la pantalla?Use la barra vertical () para entubar comandos. Escriba#ls –al /etc less.
Se muestra poco a poco, línea por línea.Es necesario presionar enter para que se de,poco a poco. Solo se buscan los que el usuario solicita.
Visualizar el directorio actual y del directorio /usr/bin pantalla por pantalla.
# ls more
# ls /usr/bin more.
Se muestran todos de una vez,ademas que se ordenan alfabéticamente.

Búsque los archivos con caracteres host en el directorio /etc.
#ls /etc grep hostmuestra los archivos uno por uno.
Ahora que indique la cantidad de líneas.
#ls /etc grep host wc –l,
Nos da como resultado 4 lineas, se cuents la cantidad de archivos listados en ls/etc.

7. Visualización del inicio y final de un archivo de texto.
- Para ir al inicio de un archivo.
#head .bash_history: indica el inicio del archivo hace el mismo que el less, se danel historial por cada uno de los usuarios.Nos presenta todo los cambios que han sido hecho(borrados,actualizado,creado) en fin el historial de 1 o mas archivos.
- Para ir a las últimas líneas del archivo
#tail -f .bash_history: final del archivo, hace lo mismo que el less
8.- Visualización del inicio y final de un archivo de texto
_
• Para ir al inicio de un archivo: Comando: #head .bash_history. Resultado: cdcd..cd:cd [root@root]cd rootls /ls /usr/binls rootls /root#date
_• Para ir a las últimas líneas del archivo: Comando: #tail -f .bash_history. Resultado: wc etc/wc –l datos1wc –l datos1cat -n datos1
• Repetir la acción anterior redirigiendo la salida al archivo datos1.num.#cat -n datos1 > datos1.numcat -n datos1 > datos1.numcat -n datos1 > datos1.numcat -n datos1 > datos1.num

Práctica Vi No. 1
• Crear un archivo numero.linea que contenga el texto "línea n".
Ejemplo:
línea 1
línea 2
etc.
• La idea es que se llene más de una pantalla
a) Mover el cursor a:
- la primera línea de la pagina --> :0
- la ultima línea de la pagina --> :$
- la primera línea del archivo --> :1G - la ultima línea del archivo --> :G
- línea 15: --> :15G
b) Borrar la palabra línea del renglón 10 --> : 10 d
d) Borrar "ero" de la palabra numero insertada en c)
e) Borrar las líneas 3,4 y 5. Reinsertarlas luego de la línea 12.
f) Copiar la línea 9 después de la línea 2 --> :9 t 2
g) Mover la línea 10 luego de la 13 --> :10 m 13
h) Numerar las líneas --> :set nu
Grabar el archivo y salir --> :wq

No hay comentarios: