Diferencia entre revisiones de «Introducción a Linux/Comandos»
Contenido eliminado Contenido añadido
m Bot: Correcciones ortográficas; cambios triviales |
Sin resumen de edición |
||
Línea 1:
Los comandos, en su mayor parte, no son realmente más que pequeños programas incorporados en el sistema operativo. Técnicamente,
Por ello, todas las reglas de sintaxis aplicables a los comandos son aplicables a cualquier programa
Más abajo se dan ejemplos más concretos, pero como ejemplo introductorio, usaré los comandos <code>cd</code> (cambiar directorio actual) y <code>ls</code> (mostrar contenido de directorio actual)
==Reglas de sintaxis==
===Capitalización===
anais@pepeluis:~$ LS -L
▲* Regla número 1: la distinción entre mayúsculas y minúsculas es crucial. Los nombres de los comandos siempre se escriben en minúsculas; las opciones cambian de significado o son inservibles si se confunden
bash: LS: no se encontró la orden
anais@pepeluis:~$ ls -l
drwxr-xr-x 1 pepeluis pepeluis 4096 mar 4 20:08 Documentos
drwxr-xr-x 2 pepeluis pepeluis 4096 mar 4 20:08 Escritorio
drwxr-xr-x 1 pepeluis pepeluis 4096 mar 8 19:37 experimento
anais@pepeluis:~$ ls -L
Documentos Escritorio experimento
===Parámetros (dije Ortega y Gasset, no ''Ortega'' y ''Gasset'')===
Regla número 2: todos los parámetros se separan por espacios; la consola reconoce la primera palabra como el nombre del comando (o la ruta del programa) y cada cadena de texto entre espacios como un parámetro.
anais@pepeluis:~$ cd Documentos
anais@pepeluis:~/Documentos:$ ls
drwxr-xr-x 1 pepeluis pepeluis 4096 mar 4 23:24 Pinky y Cerebro
drwxr-xr-x 2 pepeluis pepeluis 4096 mar 6 13:35 Recetas de cocina
anais@pepeluis:~/Documentos:$ cd Pinky y Cerebro
bash: cd: Pinky: No existe el fichero o el directorio
El sistema entendió "acceder a la carpeta Pinky" (el comando <code>cd</code> solo admite un argumento y considera los siguientes cháchara; otro comando podría haber intentado acceder a los archivos "Pinky", "y" y "Cerebro", por ejemplo). Para poder usar un espacio, lo más fácil es entrecomillar el nombre entre apóstrofos:
anais@pepeluis:~/Documentos$ cd 'Pinky y Cerebro'
anais@pepeluis:~/Documentos/Pinky y Cerebro:$
También se pueden escribir las primeras letras y pulsar la tecla Tabulación para activar el autocompletado. El resultado sera éste:
anais@pepeluis:~/Documentos$ cd Pinky\ y\ Cerebro
(de haber varias opciones posibles, mantener pulsada la tecla Tabulación para que aparezcan todas en pantalla. Tecléense unas cuantas letras más, y vuélvase a probar)
La barra inversa (\) se llama "carácter de escape". Esto significa que modifica el significado del carácter siguiente: por ejemplo, <code>\n</code> significa "salto de línea". La barra es necesaria porque hay varios símbolos que tienen un significado especial en Bash (el espacio es el más evidente). Si entrecomilla los nombres de sus parámetros, debería bastar con escapar los apóstrofos (\'), y las barras inversas (\\).
Esta barra se puede conseguir pulsando Alt Gr + º (símbolo de ordinal) en teclados españoles.
=== Rutas ===
A estas horas ya habrá advertido el significado de la barra hacia adelante (/); la carpeta que va después de ella está contenida dentro de la carpeta que va antes de ella. Una barra hacia adelante suelta indica el directorio raíz
* Regla número 4: las opciones se escriben anteponiendo un guion, si constan de una sola letra; o dos si constan de varias. En casi todos los comandos (o por lo menos en todos los comandos de sistema) todas las opciones que se utilicen de una sola letra se pueden contraer juntando todas las letras y usando un solo guion al principio. Esto funciona excepto cuando las opciones necesiten a su vez parámetros. <br />Ejemplo: <code>ls -a -l</code> equivale a <code>ls -al</code>▼
Cada vez que sea necesario escribir una ruta como un parámetro, se puede escribir:
*explicitando la ruta exacta, en referencia al directorio raíz (si la ruta empieza con una barra)
*indicando la ruta en referencia a la carpeta actual (como se hizo en los ejemplos anteriores)
*en referencia a una de las siguientes abreviaturas (también se pueden usar solas)
**<code>.</code> para la carpeta actual. (<code>Pinky y Cerebro</code> sería sinónimo con <code>./Pinky y Cerebro</code>) Conveniente para mover archivos desde una carpeta arbitraria a la carpeta actual, o para ejecutar scripts en la carpeta actual
:Curiosamente, es posible escribir <code>rm experimento</code> para borrar el archivo "experimento", pero para arrancarlo es necesario escribir <code>./experimento</code>, a menos que esté en una de las carpetas clave. Es decir, el punto no es obligatorio para los parámetros, pero sí para los nombres del programa a ejecutar.
**<code>..</code> para el directorio inmediatamente superior. (muy fácilmente combinable: <code>../..</code> indica el directorio superior del superior; <code>../../yinlao</code> indica la carpeta "yinlao" que está en el directorio superior del superior del actual; etc.)
**<code>~</code> para la carpeta personal (depende de qué nombre haya usado para iniciar sesión)
=== Opciones (un tipo especial de parámetros) ===
▲
== Lista de comandos ==
Esta es una lista muy reducida que ofrece las opciones más típicas de los comandos más usados. Los parámetros entre signos menor que y mayor que (<>) deben sustituirse por el valor adecuado; los corchetes indican que el parámetro es opcional. No deben escribirse los corchetes ni los símbolos menor que y mayor que, a menos que sean parte del parámetro.
Para más información, use los comandos de ayuda.
=== Comandos de ayuda ===
{| class="wikitable" border="1"
Línea 24 ⟶ 71:
! Explicación
|-
| info || Información general autoexplicativa. Excesivamente detallada; clasifica los comandos según utilidad.
|-
| man <comando> || Manual completo (o casi completo) sobre un comando<br />Existe un manual para el propio comando man, al que se accede por <code>man man</code>
Línea 37 ⟶ 84:
|}
=== Administración de carpetas y archivos ===
{| class="wikitable" border="1"
! Sintaxis
Línea 176 ⟶ 223:
|}
=== Relativos a permisos y usuarios ===
{| class="wikitable" border="1"
! Sintaxis
Línea 258 ⟶ 305:
|}
=== Manejo de ficheros de texto ===
En general los siguientes comandos se utilizan en la práctica anidados en tuberías de forma que la salida de un comando se utiliza como entrada para el siguiente eliminando la opción <ruta> lo cual le indica al comando que utilize como fichero de entra la salida del comando anterior. P.ej, para mostrar los 10 primeros resultados de un fichero de texto conteniendo la palabra "amarillo" ejecutaríamos un comando similar a:
cat "fichero de texto" | grep -i amarillo | head -n 10
Línea 273 ⟶ 320:
|}
=== Monitorización ===
En general, las opciones de monitorización pueden ser considerados comandos de nivel avanzado o muy avanzado.
{| class="wikitable" border="1"
Línea 302 ⟶ 349:
|}
=== Gestión de energía ===
Permite controlar parámetros sobre la gestión de energía, como la frecuencia de la CPU, deshabilitar USBs no usados, ...
{| class="wikitable" border="1"
Línea 311 ⟶ 358:
|}
=== Operadores ===
{| class="wikitable" border="1"
! Sintaxis
|