Resumen Examen Comandos Linux PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 14

Tema 3

LINUX es un sistema multiusuario.

$shutdown -h now (Apagar equipo.


clear (Borrar pantalla
man (Manual. Ej: $man date. Barra espaciador para pasar pagina y Q para quitar.

CARACTERES DE CONTROL:
Crtl+C (Abortar ejecución programa.
Ctrl+S (Detiene visualización en pantalla.
Ctrl+Q (Reanuda visualización en pantalla.
Ctrl+D (Final de datos por teclado.

FORMATO GENERAL DE LOS COMANDOS:


Comando [opciones] [expresión] [fichero (s) ]

ESTRUCTURA JERÁRQUICA

/ (Raíz del sistema de ficheros.


/home (Directorio para los archivos de los usuarios
/bin (Directorio que contiene algunas órdenes ejecutables.
/usr/bin (Resto de órdenes ejecutables.
/usr/spool/mail (Donde se almacena la correspondencia.
/lib (Bibliotecas esenciales, etc...
/dev (Contiene ficheros especiales asociados a los diferentes dispositivos del
sistema(impresoras).
/etc (Configuración del sistema local-máquina.
/tmp (Se utiliza para crear ficheros temporales.
/usr (Directorio donde se suelen encontrar los directorios de los usuarios del sistema.
/root (Directorio hogar del usuario root.
/mnt (Punto de montaje de particiones temporales.

LISTADO DEL CONTENIDO DE UN DIRECTORIO (comando ls)

ls (Petición al sistema para mostrar el contenido de un directorio.

Sin (Sin opción muestra los nombres de los archivos y directorios.


-l ((long) en fila.
-a (all) (Lista todas las entradas, incluso los ficheros que comiencen por punto.
-R (Visualiza la estructura de subdirectorios de un directorio concreto.
-L (Lista recursivamente un conjunto de directorios a partir del directorio donde nos
encontramos.
-F (Para saber que ficheros son ordinarios o directorios.
-lt (Ordenación por fechas (los más recientes).
-ltr (Ordenación por fechas (los más antiguos.
-i (Antepone a cada nombre de fichero su nº de i-nodo

1
1º campo.
Especifica los modos de los archivos.(drw-r--r--)
El primer carácter indica el tipo de archivo que puede ser:

d (Si hace referencia a un directorio.


- (Si hace referencia a un fichero ordinario.
l (Si hace referencia a un enlace.
b (Fichero especial tipo bloque. Describe un dispositivo que maneja datos en bloques.
c (Ficheros de caracteres.

2º Campos especifica el número de enlaces.


Para ficheros, indica el número de enlaces o referencias a ese fichero que hay en el
sistema.

3ºCampo especifica el nombre propietario.


Indica el nombre del propietario del fichero.

4ºCampo especifica tamaño del fichero.


Hace referencia al grupo al que pertenece el usuario.

5ºCampo especifica tamaño del fichero.


Muestra el tamaño del fichero en bytes.

6º-7º-8º Campo especifica fechas.


Fecha y hora de última modificación á hacer referencia a la hora en que el fichero fue
modificado por última vez.

9ºCampo especifica nombre


Nombre de los archivos o directorios.

CAMBIO DE DIRECTORIO (cd)

$cd/ (Se sitúa en el directorio raíz.


$cd .. (Se sitúa en el directorio superior.
$cd/etc (Se sitúa en el directorio /etc.

DIRECTORIO ACTIVO (comando pwd)

Para saber en qué directorio estamos en un momento determinado se utiliza la orden


pwd.

Comando set: Para ver las variables que están definidas en nuestro shell.
Comando env: Nos muestra sólo las que pertenecen al entorno.
Orden echo: Con él podemos mostrar mensajes, escribir el ficheros, cambiar parámetros
del kernel...

UTILIZACIÓN DEL ; Y LOS ()

Podemos introducir varias ordenes en una misma linea utilizando como separación los
“punto y coma”. Se ejecuta de izquierda a derecha.

2
Tema 4

CAMINO O PATH:

Secuencia de directorios que se ha de recorrer para acceder a un determinado fichero


separado por /.

! CAMINO ABSOLUTO: Muestra toda la ruta de un fichero: /home/ejercicios/eje.txt


! CAMINO RELATIVO: El nombre hace referencia a fichero o subdirectorios situados
dentro del directorio en el que nos encontramos:
! $pwd
! /home/ejercicios
! $ls -l eje3

COMANDOS CAT Y FILE

file (Para saber que tipo de archivo es.


! $file /etc/d.profile
! /etc/d.profile: ascii text
cat (Visualizar el contenido de un fichero. Tiene que ser un fichero de texto.
! $cat /etc/d.profile
touch fich1 (Crear archivos vacíos.

CARACTERES COMODIN

* (Representa cualquier cadena de caracteres arbitraria, incluyendo la cadena vacía.


? (Representa a cualquier carácter simple.
[] (Pueden contener un grupo o rango de caracteres, y corresponden a un carácter simple.

Todas estas operaciones pueden ser combinadas entre si.

COMANDO MORE

La orden more lista un fichero.


! $more /usr/pub/ascii
! -n (Lista el fichero las n primeras líneas y no con el número de líneas que posee la
pantalla.
! +n (Lista el fichero a partir de la línea n.

CREAR Y ELIMINAR DIRECTORIOS

mkdir (Crear directorios. make directory


! Crear un directorios:! $mkdir ejercicios
! Crear varios directorios:! $mkdir E1 E2 E3
! Crear varios directorios en arbol:
! ! Opción -p si alguno de los directorios no existe lo crea.
! ! ! ! ! mkdir -p dir1/dir2/dir3/dir4

3
rmdir (Borra directorios vacíos. remove directory
! $rmdir E3

COPIAR, MOVIER, RENOMBRAR Y BORRAR ARCHIVOS Y DIRECTORIOS

cp (Copiar. Sintaxis:cp origen destino.


! $cp ./clientes/fich ..

-r (Para copiar directorios.


! $cp -r $HOME/ejercicios $HOME/temas

mv (Mover. Sintaxis:mv origen destino.


! $mv $HOME/ejer $HOME/temas
mv (Renombrar.
! $mv fich1 fich2

rm (Borrar. Sintaxis rm archivo.


! $rm fich1
rm -r (Borrar directorios no vacios de forma recursiva.
! $rm -r ejercicios

ARCHIVOS DE ENLACE (COMANDO ln)

Los enlaces te permiten dar a un único fichero múltiples nombres. Los ficheros son
identificados por el sistema por un nº de inodo, el cual es el único identificador del fichero
para el sistema de ficheros (con la orden ls -i mostrará los nº de inodo). Un directorio es
una lista de números de inodo con sus correspondientes nombres de fichero.

Si tenemos un fichero llamado artículo y lo copiamos a otro directorio. Cuando


modificamos uno de los dos fichero el contenido del otro fichero no se modifica. Entonces
si creamos enlaces si se modifica.

! ENLACES DUROS: ln

Enlaza el fichero con un inodo. Solo se pueden crear enlacer duros entre ficheros del
mismo sistema de ficheros.
! $ln fich1 fich11
! $ln fich 2 ./fich22
!
! ENLACES SIMBOLICOS: ln -s

Permite dar a un fichero el nombre de otro, pero no enlaza el fichero con un inodo. No
podemos hacer enlaces simbólicos entre ficheros del mismo sistema.
! $ln -s fich3 fich33

4
PERMISOS DE ACCESO A ARCHIVOS (comando chmod)

Permisos simples:

Los permisos se aplican a los archivos y a los directorios.

r:lectura
Archivo. Poder acceder a los contenidos de un fichero.
Directorio. Poder leer un directorio, ver qué ficheros contiene
w:escritura
Archivo. Ppoder modificar o añadir contenido al fichero
Directorio. Poder borrar o mover ficheros en un directorio
x:ejecución
Archivo. Poder ejecutar un programa binario o guión del shell
Directorio.Poder entrar en un directirio
Cada fichero tiene tres niveles de acceso:
El acceso por parte del propietario
El acceso por parte de su grupo (en este caso sería, por ejemplo, el grupo de prácticas
del grupo 6L)
El acceso público (para cualquier usuario del sistema).
rwx (propietario) rwx (grupo) rwx (público)

Si tenemos rwx El usuario tiene todos los permisos


r-x r-- El grupo solo puede leer y ejecutar
El público solo puede leer

El comando chmod
El comando chmod se usa para establecer los permisos de un fichero. Solo el propietario
puede cambiar los permisos del fichero.
Existen dos sintaxis del comado chmod:
• La sintaxis con argumentos simbólicos:
chmod {a,u,g,o}{+,-}{r,w,x} filename
Opciones:
5
a (a todos) u (al usuario) g (al grupo) o (al resto de usuarios)

(+) a ñ a d i r (-) quitar permisos


permisos

r lectura w escritura x ejecución

Ejemplos:

Chmod a Da a todos los usuarios acceso al fichero


+r fich1
C h m o d Equivalente al ejemplo anterior, ya que si no se indican las
+r fich1 opciones a, u, g o o por defecto se toma a
C h m o d Quita permisos de ejecución a todos los usuarios excepto al
o g - x propietario
fich1
C h m o d Permite al propietario leer, escritura y ejecutar el fichero
u+rwx
fich1
C h m o d Quita permisos de lectura, escritura y ejecución a todos los
o - r w x usuarios menos al propietario y a los usuarios del grupo del
fich1 fichero

Permisos en binario y octal:

421
permisos binario octal
000=0!
rwx r-x 111 101 7 5 4
001=1
010=2 r-- 100
011=3
100=4 ej:
101=5 rw- rw- r--
110=6 110 110 100
111=7 6 6 4

$chmod 664 fich2

Permisos especiales
• Sticky-bit ( bit t sobre other )(1000)

Sobre un directorio indica que un archivo sólo puede ser borrado por:El propietario del
archivo , el propietario del directorio y el root

Si aparece:
6
– t el bit sticky está a uno y el bit de ejecución de otros está también a 1

– T el bit sticky está a uno y el bit de ejecución de otros no está a 1.

• Bit SGID ( bit s sobre group ) (2000)


Activado sobre un archivo, da los derechos del grupo a quien lo ejecuta, y solo durante la
ejecución.
Si aparece:
– s el bit de setgid está a uno y el bit de ejecución del grupo está a 1.
– S el bit de setgid está a uno pero el bit de ejecución del grupo no está a uno.
• Bit SUID ( bit s sobre owner ) (4000)
Activado en un archivo ordinario, asigna derechos de propietario a quien lo ejecuta, y solo
durante el tiempo de ejecución.
Ejemplos
$chmod 1741 fich1 $ c h m o d 2 7 7 4 $ chmod 4744 fich3
rwx r-- --t fich2 rws r-- r--
rwx rws r--

$ c h m o d 1 7 4 4 $ c h m o d 2 7 4 4 $ chmod 4444 fich3


fich1 fich2 r-S r-- r--
rwx r-- r-T rwx r-S r--

Para poner todos los permisos

chmod 7777 file


rws rws rwt

  REDIRECCIÓN DE E/S "|" ">" "<" ">>"

• Pipes "|"
Realiza dos redirecciones mediante un solo símbolo; redirige la salida estándar de un
comando a la entrada estandar de otro.
$ ls –l | cut -c1-10

•Signo ">" Guardar la información en un archivo


Ejemplos
$ ls –l > bandeja

$ sort > verdura


finalizar con Ctrl+d

Lo tecleado lo mete en el fichero verdura ordenado

•Signo "<" Obtiene la información en un archivo


7
Ejemplos
$ sort < fresa Ordena el archivo fresa y lo saca en pantalla.

$ s o r t f r e s a > Ordena el archivo fresa y lo mete en fresaord


fresaord

$ cat fich1 fich2 > Guarda en fich3 el contenido de fich1 y fich2


fich3

$ cat fich1 > fich3 Guarda la inf en fich3

•Signo ">>" Introduce el contenido al final del fichero


Ejemplos
$ cat fich2 >> fich3

$ cat fich 1 fich2 >> fich3

EXPRESIONES REGULARES

Una expresión regular es una serie de caracteres. Muchos de los caracteres, incluyendo
las letras del alfabeto, simplemente se representan a si mismo. Algunos caracteres
especiales tienen un sentido más amplio.

Los siguientes caracteres especiales son reconocidos por todos los comandos.

C (Cualquier carácter que no sea un carácter especial coincide consigo mismo.

. (Equivale a cualquier carácter.

* (Equivale a ninguna o más apariciones de la expresión regular de un carácter simple


que preceda a *. god good goooood

.* (Juntos indican cualquier cadena de cualquier tipo de caracter.

\ (Elimina significado especial del carácter siguiente.

[lista] (Equivale a cualquier carácter de lista. Puede ir con un guión para indicar un rango.

[^lista] (Equivale a cualquier carácter que no pertenezca a una lista.

^ (Cuando este es primer carácter de una expresión regular, el resto de la expresión


deberá coincidir con el principio de una línea.

$ (Cuando este es el último carácter de una expresión regular, el resto de la expresión


deberá coincidir con el final de una línea.

^$ (Juntos para indicar que ocupa la línea completa.

NOTA: Cuando utilizamos expresiones regulares hay que poner entre comillas la
expresión ya que:
8
´ Elimina el significado especial de todo lo que contiene.(todos los
´ caracteres especiales que estan en su interior los toma como
caracteres de las expresiones regulares)
“” lo mismo que ´´ pero no elimina el significado especial de ´´,? y $

HERRAMIENTAS PARA TRABAJAR CON LOS ARCHIVOS DE TEXTO

grep (busca en uno o más archivos las líneas que contengan un objeto y después
imprime todas las que encuentra.

! $grep soltero clientes

NOTA: Si el objeto es una frase hay que encerrarlo entre comillas “la casa era grande”

Para buscar un archivo que no lo reconocemos por su nombre pero si sabemos una línea
que lo identifica del resto de los archivos: $grep carta*

. (Se corresponde con cualquier carácter (*) cualquier número de repeticiones; juntos
indican cualquier cadena de cualquier tipo de caracteres.

(^)($) (Para anclar palabras al principio y final de la línea (si van juntos para indicar que
ocupa la línea completa), y los ([ ]), que se utilizan para indicar una clase de caracteres.
(\) elimina significado especial del carácter siguiente.

-v (Muestra las líneas que no coinciden con el patrón especificado

! $grep -v ‘[0-9]’ telnos! Lista todas las líneas del archivo telnos que no
contienen números.

-i (No distinción entre mayúsculas y minúsculas.

! $grep Soltero cliente! $grep -i soltero cliente

-l (Listado de sólo los nombres de archivos.

$grep -l Sue* Lista todos los archivos del directorio actual que contienen el nombre “Sue”

OPERACIONES CON COLUMNAS Y CAMPOS (cut, paste)

Comando cut:

Permite seleccionar columnas o campos particulares de archivos.

Utilización de cut con campos y con columnas. Opción -f

$cut -f1 clientes ! cortando el primer campo de cada línea o registro

9
Utilización de cut con caracteres. Opción -c

! $ls -l | cut -c40-48,66-! (Posiciones 40-48 y del 66 hasta el final.

Delimitadores: -d (delimitados) (: # % ^tab ` ´)

El delimitador es el carácter que se ha aplicado entre campo y campo del archivo.

$ cut –d: -f1,3 clientes


$ cut –d` ´ -f2- file

HERRAMIENTAS PARA LA ORDENACIÓN (sort)

sort (Ordenación de contenido de un archivo. También para combinar el contenido de


varios archivos en un único archivo ordenado.

> $ sort names > name.ord

> $ sort names1 names2 names3 > names.ord

-o (Sustitución de un archivo por una versión ordenada.! $sort -o telnos telnos

-f (Ignora la distinción entre mayúsculas y minúsculas.! $sort -f local

-n (Ordenación numérica.! $sort -n frecuencia

-r (ordenación numérica inversa.! ! $sort -r n frecuencia

+nº (Ordenación saltando uno o más campos. !$sort +1 frecuencia

-t (Separador de campo: y saltarse 3 campos.! $sort -t: +3 telnos

-u (Ordenar varios archivos eliminando los repetido.! $sort -u names.*> names.sort

COMPARACIÓN DE ARCHIVOS (cmp, diff)

cmp (Dice si dos archivos difieren o no, y en caso afirmativo, informa del lugar dentro del
archivo donde ocurre la primera diferencia.! $cmp carta carta1

diff (Comparar dos archivos línea a línea e imprime las diferencias. Además, para cada
bloque de texto diferente en los dos archivos, diff dice cómo ha de cambiarse el texto del
primer archivo para que coincida con el texto del segundo.! $diff carta carta.1

10
Resultado de la diferencia entre los archivos carta y carta.1
3c3
< Please review the attached memo.
---
> Please review the enclosed document.
4a5
> Let me know what you think
< Línea que sólo se encuentra en el primer archivo
> Línea que sólo se encuentra en el segundo archivo
--- Separan las partes de la salida de diff que hacen referencia a las
secciones diferentes de los archivos
3c3 Existe un cambio (c) entre la línea 3 del primer archivo y la línea 3
del segundo archivo.
4ª5 La letra a (append) indica que la línea 5 del segundo archivo se
añade a continuación de la línea 4 del primero.
D d (delete) indicaría líneas que se encuentran en un archivo pero no en
el otro.

MODIFICACIÓN DE ARCHIVOS (sed)

sed (Es otro filtro de Linux que permite hacer modificaciones a los ficheros, aplicando
distintos comandos dados en los argumentos. La orden.

$sed”s/cadena1/cadena2/”fich

Leerá el fichero fich línea a línea, de manera que si una línea se encuentra el patrón
cadena1, se realiza la sustitución de la primera ocurrencia de cadena1 encontrada por
cadena2 y se escribe la línea en la salida estándar del comando; aquellas líneas donde
no aparece ningún patrón coincidente, se escribe sin modificar.

La orden sed también permite eliminar todas las apariciones de una cadena dentro de un
fichero.!

$sed “s/Juan//”fich

Borra la primera ocurrencia de la cadena Juan en cada línea de fich para suprimir todas
las líneas de fich que contengan la cadena Juan utilizaremos:

$sed “s/Juan/d” fich

En todos los casos, la cadena de coincidencias puede ser cualquier expresión regular:

$sed “s/Juan [A-Z][A-Za-z]*/Pepe/” fich

La búsqueda y sustitución de texto en parte del fichero se realiza mediante el comando


siguiente:

$sed “a,b s/cadena1/cadena2/” fich

11
Siendo a y b el número de las líneas entre las cuales se aplica el comando de sustitución.

Añadiendo la opción g al final de la expresión de sustitución se realizarán búsquedas y


sustituciones globales

$sed “a,b s/cadena1/cadena2/g” fich

HERRAMIENTAS PARA BUSCAR UN ARCHIVO (find)

find (Se puede utilizar para buscar el directorio donde se encuentra un archivo.

Sintaxis: find [opciones] acción!! $find /-name proyecto -print

-print (Visualizar el camino.

-name (Nombre del fichero

-user (Búsqueda por nombre de usuario

-grup (Nombre del grupo

-size m (m=bloque_tamaño. Visualiza ficheros de tamaño bloques_tamaño

-perm +p -p (p=nº octal. +p :selecciona todos los ficheros que tengan ese tipo de
permisos)(-p :todos los que no tengan ese permiso)

-type c (Donde c (d-directorios, l-simbolico, c-caracter, b-bloque, f-regular.

-atimen (n-dias (accedidos)

HERRAMIENTAS PARA COMPRIMIR UN ARCHIVO

tar (Permite empaquetar, comprimir y copiar archivos respetando su jerarquía.

Sintaxis: tar [opciones] nombre_archivo

f Usar ‘archivo’ como archivo tar ( por defecto /dev/rmt0 es el archivo


tar )
c Crea un nuevo archivo tar
t Listar el contenido de un archivo tar
r Añade archivo al final de un archivo tar
u Añade archivos, pero solo si son más recientes que los que tiene la
copia.
x Extrae archivos de un archivo tar.

12
z Crear un nuevo archivo tgz
l Indica a tar que opere solo con los S.A. locales.
C Indica el directorio en el caso de desempaquetado. [-C dir]
v Escribir información sobre lo que está haciendo
w Indica a tar que pida confirmación de sus acciones
A Añade archivos tar a otro archivo tar.
d Genera una lista con las diferencias entre los datos de la copia tar y el
estado actual del sistema.

Ejemplos archivos tar (empaquetar archivos)

cf Crear $tar cf textos.tar arch1 arch2 arch3


cvf Crear y mostrar $tar cvf textos.tar arch3 arch4 arch8
tvf Ver contenido $tar tvf textos.tar
xvf Extraer $tar xf textos.tar
rf Añadir $tar rf textos.tar arch9
Ejemplos archivos tgz (empaquetar + comprimir y extraer)
cvzf E m p a q u e t a r $tar cvzf text.tgz text1 text2
+Comprimir
xvzf extraer $ tar xzf textos.tgz
tzf Ver contenido $tar tzf text.tgz
-C dir P o n e r e n o t r o $tar xzf text.tgz -C ./documentos
directorio

gzip (Comprimir y descomprimir archivos. Genera un archivo .gz con los atributos del
archivo original, excepto su longitud y nodo y desaparece el archivo original.

Sintaxis: gzip [opciones] [nombre]


-d descomprime archivos. Equivale a gunzip.
-9 intenta mejor compresión.
-R gzip actúa de forma repetitiva en los directorios.
-l muestra información de un archivo zip.
-c manda el archivo comprimido a la stdout.

ORDENAR PARA CAMBIAR DE GRUPO O DE PROPIETARIO A UN ARCHIVO

chown (Permite ceder la propiedad de un archivo.

Sintaxis: chown ID_nuevo_propietario archivo


13
$chown user2 arch1

chgrp (Permite cambiar el grupo al que pertenece un archivo.

Sintaxis: chgrp GID_nuevo_grupo archivo

$chgrp user arch1

14

También podría gustarte