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

De Wiki de Sistemas Operativos
Saltar a: navegación, buscar
(ssh)
 
(No se muestran 10 ediciones intermedias del mismo usuario)
Línea 8: Línea 8:
 
* Acceso a variables.
 
* Acceso a variables.
  
= Órdenes básicas =
+
= Navegación por el árbol de directorios =
 
 
== pwd ==
 
 
 
usuario@pc:~$ pwd
 
/home/profesor
 
  
 
== ls ==
 
== ls ==
Línea 19: Línea 14:
 
Lista el contenido de una carpeta.
 
Lista el contenido de una carpeta.
  
* -a, mostrar todo, incluído "ocultos".
+
* -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.
 
* -l, formato largo: rwx.
** r, lectura.
 
** w, escritura (actualización del contenido del fichero o directorio).
 
** x, ejecución (en directorio, se refiere al acceso).
 
  
== cd ==
+
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).
  
Cambia el directorio de trabajo actual.
+
Para los directorios, la interpretación es diferente:
  
== man ==
+
* 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''.
  
Muestra página de manual
+
== cd ==
  
== echo ==
+
Cambia el directorio de trabajo actual.
  
Imprime mensaje en pantalla
+
== pwd ==
  
== touch ==
+
usuario@pc:~$ pwd
 +
/home/profesor
  
Crea un fichero vacío.
+
= Manejo de ficheros y directorios =
  
 
== mkdir ==
 
== mkdir ==
Línea 121: Línea 120:
  
 
  curl http://archive.ubuntu.com/ubuntu/dists/bionic-updates/main/installer-amd64/current/images/netboot/netboot.tar.gz -O
 
  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 ==
 
== ps ==
Línea 139: Línea 154:
  
 
Monitoriza el uso de los recursos del sistema.
 
Monitoriza el uso de los recursos del sistema.
 +
 +
= Manejo de usuarios y grupos =
 +
 +
== adduser ==
 +
 +
== deluser ==
 +
 +
== addgroup ==
 +
 +
= Manejo de permisos =
  
 
== chmod ==
 
== chmod ==
Línea 145: Línea 170:
  
 
== chgrp ==
 
== chgrp ==
 +
 +
= Administración general del sistema =
  
 
== 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