Diferencia entre revisiones de «Introducción al intérprete de órdenes»

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(Órdenes básicas)
(ssh)
 
(No se muestran 5 ediciones intermedias del mismo usuario)
Línea 10: Línea 10:
 
= Navegación por el árbol de directorios =
 
= Navegación por el árbol de directorios =
  
= ls =
+
== ls ==
  
 
Lista el contenido de una carpeta.
 
Lista el contenido de una carpeta.
Línea 29: Línea 29:
 
* x (execute), se puede acceder al directorio mediante la orden ''cd''.
 
* x (execute), se puede acceder al directorio mediante la orden ''cd''.
  
= cd =
+
== cd ==
  
 
Cambia el directorio de trabajo actual.
 
Cambia el directorio de trabajo actual.
  
= pwd =
+
== pwd ==
  
 
  usuario@pc:~$ pwd
 
  usuario@pc:~$ pwd
 
  /home/profesor
 
  /home/profesor
  
== Manejo de ficheros y directorios ==
+
= Manejo de ficheros y directorios =
  
= mkdir =
+
== mkdir ==
  
 
Crea un directorio
 
Crea un directorio
  
= rm =
+
== rm ==
  
 
Borrado de ficheros y directorio (con contenido).
 
Borrado de ficheros y directorio (con contenido).
Línea 58: Línea 58:
 
La orden 'rmdir' sirve para borrar directorios vacíos. No muy útil :-(, mejor usar 'rm'.
 
La orden 'rmdir' sirve para borrar directorios vacíos. No muy útil :-(, mejor usar 'rm'.
  
= sort =
+
== sort ==
  
 
Ordena un fichero de manera alfanumérica.
 
Ordena un fichero de manera alfanumérica.
  
= cp =
+
== cp ==
  
 
Copia ficheros o carpetas.
 
Copia ficheros o carpetas.
Línea 78: Línea 78:
 
La opción '-r' me permite realizar copias recursivas, es decir, de una carpeta y su contenido.
 
La opción '-r' me permite realizar copias recursivas, es decir, de una carpeta y su contenido.
  
= cat =
+
== cat ==
  
 
Muestra el contenido de un fichero de texto plano.
 
Muestra el contenido de un fichero de texto plano.
Línea 96: Línea 96:
 
  cat lista-clase.txt lista-clase2.txt | sort > lista-clase-ordenada.txt
 
  cat lista-clase.txt lista-clase2.txt | sort > lista-clase-ordenada.txt
  
= grep =
+
== grep ==
  
 
Sirve para buscar patrones, por ejemplo:
 
Sirve para buscar patrones, por ejemplo:
Línea 108: Línea 108:
 
  sort lista-de-clase.txt | grep Saavedra
 
  sort lista-de-clase.txt | grep Saavedra
  
= wc =
+
== wc ==
  
 
Sirve para contar el número de líneas, palabras y caracteres.
 
Sirve para contar el número de líneas, palabras y caracteres.
Línea 115: Línea 115:
 
  1  3 27 lista-clase.txt
 
  1  3 27 lista-clase.txt
  
= touch =
+
== curl ==
  
Crea un fichero vacío.
+
Sirve para descargar ficheros, por ejemplo:
  
= Otros comandos =
+
curl http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz -O
  
== man ==
+
== touch ==
  
Muestra página de manual
+
Crea un fichero vacío.
  
 
== echo ==
 
== echo ==
Línea 129: Línea 129:
 
Imprime mensaje en pantalla
 
Imprime mensaje en pantalla
  
== curl ==
+
= Documentación =
  
Sirve para descargar ficheros, por ejemplo:
+
== man ==
  
curl http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz -O
+
Muestra página de manual
  
== Manejo de procesos ==
+
= Manejo de procesos =
  
= ps =
+
== ps ==
  
 
Muestra la lista de procesos en ejecución.
 
Muestra la lista de procesos en ejecución.
  
= kill =
+
== kill ==
  
 
Termina con la ejecución de un proceso.
 
Termina con la ejecución de un proceso.
Línea 151: Línea 151:
 
  kill -KILL 4356
 
  kill -KILL 4356
  
= top =
+
== top ==
  
 
Monitoriza el uso de los recursos del sistema.
 
Monitoriza el uso de los recursos del sistema.
Línea 174: Línea 174:
  
 
== ssh ==
 
== ssh ==
 +
 +
Para acceder al sistema 'regula.lsi.us.es' con el usuario prueba:
 +
 +
ssh prueba@regula.lsi.us.es
 +
 +
Para copiar el fichero 'debian-9.5.0-amd64-netinst.iso' a regula.lsi.us.es con el usuario ''prueba'':
 +
 +
scp debian-9.5.0-amd64-netinst.iso prueba@regula.lsi.us.es:
 +
 +
Muy importante los ':' del final en la línea anterior.
  
 
== apt ==
 
== apt ==

Revisión actual del 16:03 25 oct 2018

Interprete de órdenes

  • Autocompletado.
  • Ctrl-L, limpia el contenido de la pantalla.
  • Definición de variables.
  • Acceso a variables.

Navegación por el árbol de directorios

ls

Lista el contenido de una carpeta.

  • -a, mostrar todo, incluído los ficheros que empiezan por '.' (en alguna bibliografía se refieren a estos ficheros y directorios como "ocultos").
  • -l, formato largo: rwx.

Los permisos de un fichero se interpretan de la siguiente manera:

  • r (read), permite leer del fichero.
  • w (write), permite modificación y del contenido del fichero, así como su borrado.
  • x (execute), permite la ejecución de un fichero (ya se binario ejecutable o un script).

Para los directorios, la interpretación es diferente:

  • r (read), se puede listar el contenido del directorio.
  • w (write), se pueden añadir nuevos fichero al directorio, así como borrar ficheros.
  • x (execute), se puede acceder al directorio mediante la orden cd.

cd

Cambia el directorio de trabajo actual.

pwd

usuario@pc:~$ pwd
/home/profesor

Manejo de ficheros y directorios

mkdir

Crea un directorio

rm

Borrado de ficheros y directorio (con contenido).

Por ejemplo:

rm fichero.txt

Para borrar un directorio hay que usar la opción '-r':

rm -r xyz

La orden 'rmdir' sirve para borrar directorios vacíos. No muy útil :-(, mejor usar 'rm'.

sort

Ordena un fichero de manera alfanumérica.

cp

Copia ficheros o carpetas.

Por ejemplo, copia el fichero 'fichero1.txt' al directorio temporal.

cp fichero1.txt /tmp

Otro ejemplo, copia una carpeta y su contenido al directorio temporal.

mkdir xyz
echo "hola mundo" > xyz/fichero.txt
cp -r xyz /tmp

La opción '-r' me permite realizar copias recursivas, es decir, de una carpeta y su contenido.

cat

Muestra el contenido de un fichero de texto plano.

cat fichero.txt

También se puede usar para concatenar ficheros:

cat lista-clase.txt lista-clase2.txt

Y podríamos combinarlo con el mecanismo de tuberías para obtener una lista ordenada:

cat lista-clase.txt lista-clase2.txt | sort

Y volcar esa salida a ordenada a un fichero con la redirección de salida:

cat lista-clase.txt lista-clase2.txt | sort > lista-clase-ordenada.txt

grep

Sirve para buscar patrones, por ejemplo:

grep Saavedra lista-de-clase.txt

El primer parametro es el patrón a buscar, el segundo es el fichero en que se se busca el patrón.

Como viene siendo habitual, se puede combinar grep con tuberias, por ejemplo:

sort lista-de-clase.txt | grep Saavedra

wc

Sirve para contar el número de líneas, palabras y caracteres.

wc lista-de-clase.txt
1  3 27 lista-clase.txt

curl

Sirve para descargar ficheros, por ejemplo:

curl http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz -O

touch

Crea un fichero vacío.

echo

Imprime mensaje en pantalla

Documentación

man

Muestra página de manual

Manejo de procesos

ps

Muestra la lista de procesos en ejecución.

kill

Termina con la ejecución de un proceso.

kill 4356

o de manera abrupta con:

kill -KILL 4356

top

Monitoriza el uso de los recursos del sistema.

Manejo de usuarios y grupos

adduser

deluser

addgroup

Manejo de permisos

chmod

chown

chgrp

Administración general del sistema

ssh

Para acceder al sistema 'regula.lsi.us.es' con el usuario prueba:

ssh prueba@regula.lsi.us.es

Para copiar el fichero 'debian-9.5.0-amd64-netinst.iso' a regula.lsi.us.es con el usuario prueba:

scp debian-9.5.0-amd64-netinst.iso prueba@regula.lsi.us.es:

Muy importante los ':' del final en la línea anterior.

apt

Ejercicios

  1. 1 Crear un arbol de directorios en la carpeta home con esta pinta:
     carpeta1
         |
         |------ carpeta2
         |
         |------ carpeta3
                    fichero.txt
                    fichero2.txt

Donde fichero.txt contiene la cadena "Probando 1 2 3" y fichero2.txt contiene la cadena "Hola Mundo".

  1. 2 Mover el fichero2.txt al temporal con el nombre fichero3.txt
  1. 3 Contar el número de lineas del fichero fichero3.txt
  1. 4 Concatenar el contenido de fichero.txt y fichero2.txt en un fichero en el home que se llame fichero4.txt

Solución

   mkdir carpeta1
   mkdir carpeta1/carpeta2
   mkdir carpeta1/carpeta3
   echo "Probando 1 2 3" > carpeta1/carpeta3/fichero.txt
   echo "Hola Mundo" > carpeta1/carpeta3/fichero2.txt
   mv carpeta1/carpeta3/fichero2.txt /tmp/fichero3.txt
   wc -l /tmp/fichero3.txt 
   cat carpeta1/carpeta3/fichero.txt /tmp/fichero3.txt > fichero4.txt