Вы находитесь на странице: 1из 15

Sintaxis Básica de Comando

Este módulo aborda exclusivamente la CLI o Command Line Interface (o «Interfaz de la Línea
de Comandos»), en lugar de la GUI o Graphical User Interface (o «Interfaz Gráfica de Usuario)
con la que probablemente estás familiarizado. La terminal CLI es una poderosa herramienta
que suele ser el método primario usado para administrar los pequeños dispositivos de baja
potencia, servidores de cómputo extremadamente potentes, y todo lo demás. Un
entendimiento básico del terminal es esencial para diagnosticar y corregir la mayoría de los
sistemas basados en Linux. Puesto que Linux se ha convertido en un sistema que está en
todas partes, incluso aquellos que trabajan principalmente con sistemas que no utilizan el
kernel de Linux, pueden beneficiarse de tener un conocimiento básico de la terminal.
¿Qué es un comando? Un comando es un programa de software que al ejecutarlo en la CLI
(«interfaz de línea de comandos» en español) realiza una acción en la computadora. Cuando
se escribe un comando, el sistema operativo ejecuta un proceso que puede leer una entrada,
manipular datos y producir la salida. Un comando ejecuta un proceso en el sistema operativo,
y entonces causa que la computadora realice un trabajo.
Para ejecutar un comando, el primer paso es introducir el nombre del comando. Haz clic en la
terminal de la derecha. Introduce ls y presiona Entrar. El resultado debe parecerse al
siguiente ejemplo:

sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Videos

El nombre del comando se basa frecuentemente en lo que hace o en lo que el desarrollador


que creó el comando piensa que va a describir mejor la función del comando. Por ejemplo, el
comando ls muestra una lista de información acerca de los archivos. Asociando el nombre del
comando con algo mnemotécnico para lo que hace puede ayudar a recordar más fácilmente
los comandos.
Para considerar
Cada parte del comando es normalmente sensible a mayúsculas y minúsculas, así que LS es
incorrecto y se producirá un error, pero ls es correcto y se ejecutará.
sysadmin@localhost:~$ LS
-bash: LS: command not found

La mayoría de los comandos sigue un patrón simple de sintaxis:


 ⁠
comando [opciones…] [argumentos…]

Típicamente, las opciones alteran el comportamiento del comando y los argumentos son
elementos o valores para el comando a actuar. Aunque haya algunos comandos en Linux que
no son completamente consistentes con esta sintaxis, la mayoría de los comandos usa esta
sintaxis o algo similar.
En el ejemplo anterior, el comando ls fue ejecutado sin opciones ni argumentos, cuando este
es el caso, su comportamiento por defecto es devolver una lista de archivos contenidos dentro
del directorio actual.

sysadmin@localhost:~$ ls
Desktop Documents Downloads Music Pictures Public Templates Vi

Los Argumentos

comando [opciones…] [argumentos…]

Un argumento se puede utilizar para especificarle al comando sobre qué actuar. Al


comando ls puede dársele el nombre de un directorio como argumento, y mostrará el
contenido de ese directorio. En el siguiente ejemplo, el directorio Documents (o
«documentos» en espaňol) se utilizará como argumento:

sysadmin@localhost:~$ ls Documents
School alpha-second.txt food.txt linux.txt os.csv
Work alpha-third.txt hello.sh longfile.txt people.csv
adjectives.txt alpha.txt hidden.txt newhome.txt profile.txt
alpha-first.txt animals.txt letters.txt numbers.txt red.txt

La salida resultante es una lista de archivos que están en el directorio Documents.


Ya que Linux es un sistema de código abierto (o «open source» en inglés), hay algunos
secretos interesantes que los desarrolladores le han añadido. Por ejemplo, el
comando aptitude es una herramienta de gestión de paquetes disponible en algunas
distribuciones de Linux. Este comando acepta moo como argumento:

sysadmin@localhost:~$ aptitude moo


There are no Easter Eggs in this program.

o en espaňol:
 ⁠

sysadmin@localhost:~$ aptitude moo


No hay sorpresas en este programa.

Hay más trucos de los que se ven a simple vista. ¡Sigue leyendo!

Linux es de código abierto! Linux es desarrollado por una comunidad, usted ve y contribuye
al código fuente!

Los Argumentos

comando [opciones…] [argumentos…]

Un argumento se puede utilizar para especificarle al comando sobre qué actuar. Al


comando ls puede dársele el nombre de un directorio como argumento, y mostrará el
contenido de ese directorio. En el siguiente ejemplo, el directorio Documents (o
«documentos» en espaňol) se utilizará como argumento:

sysadmin@localhost:~$ ls Documents
School alpha-second.txt food.txt linux.txt os.csv
Work alpha-third.txt hello.sh longfile.txt people.csv
adjectives.txt alpha.txt hidden.txt newhome.txt profile.txt
alpha-first.txt animals.txt letters.txt numbers.txt red.txt

La salida resultante es una lista de archivos que están en el directorio Documents.


Ya que Linux es un sistema de código abierto (o «open source» en inglés), hay algunos
secretos interesantes que los desarrolladores le han añadido. Por ejemplo, el
comando aptitude es una herramienta de gestión de paquetes disponible en algunas
distribuciones de Linux. Este comando acepta moo como argumento:

sysadmin@localhost:~$ aptitude moo


There are no Easter Eggs in this program.

o en espaňol:
 ⁠

sysadmin@localhost:~$ aptitude moo


No hay sorpresas en este programa.

Hay más trucos de los que se ven a simple vista. ¡Sigue leyendo!

Las Opciones

comando [opciones…] [argumentos…]

Las opciones se pueden utilizar para modificar el comportamiento de un comando. En la


página anterior, se utilizó el comando ls para listar el contenido de un directorio. En el ejemplo
siguiente, vamos a utilizar la opción -l para el comando ls, que resulta en una salida
«Visualización larga», lo que significa que la salida da más información sobre cada uno de los
archivos listados

sysadmin@localhost:~$ ls -l
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos

A menudo se elige un carácter mnemotécnico (tecla de acceso) para su propósito, tal como
eligiendo la letra l para largo o r para el reverso. Por defecto el comando ls imprime los
resultados en orden alfabético, así que añadiendo la opción -rimprimirá los resultados en el
orden alfabético inverso.

sysadmin@localhost:~$ ls -r
Videos Templates Public Pictures Music Downloads Documents Desktop

Las opciones múltiples pueden utilizarse a la vez, o bien como opciones separadas como la -l
- r o combinadas -lr. La salida de todos estos ejemplos sería la misma:

ls -l -r
ls -rl
ls -lr

Como se explicó anteriormente, la opción -l da salida a un formato de listado largo mientras


que la -r invierte la lista. El resultado del uso de ambas opciones es un listado largo dado en
orden inverso:

sysadmin@localhost:~$ ls -l -r
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop
sysadmin@localhost:~$ ls -rl
total 32
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Videos
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Templates
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Public
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Pictures
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Music
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Downloads
drwxr-xr-x 4 sysadmin sysadmin 4096 Aug 4 20:58 Documents
drwxr-xr-x 2 sysadmin sysadmin 4096 Aug 4 20:58 Desktop

En definitiva, los comandos pueden utilizar muchas combinaciones de opciones y argumentos,


así pues las posibilidades para cada comando serán únicas. ¿Recuerdas la sorpresa de la de
la opción aptitude?

sysadmin@localhost:~$ aptitude moo


There are no Easter Eggs in this program.

 ⁠
Es posible alterar el comportamiento de este comando utilizando las opciones. Observa lo que
sucede cuando se agrega la opción -v (verbose o «salida detallada» en español):

sysadmin@localhost:~$ aptitude -v moo


There really are no Easter Eggs in this program.
sysadmin@localhost:~$ aptitude -v moo
Realmente no hay sorpresas en este programa.

Combinando las múltiples opciones -v, podemos obtener una variedad de respuestas:

sysadmin@localhost:~$ aptitude -vv moo


Didn't I already tell you that there are no Easter Eggs in this program?
sysadmin@localhost:~$ aptitude -vvv moo
Stop it!
sysadmin@localhost:~$ aptitude -vv moo
¿No te dije que no hay sorpresas en este programa?
sysadmin@localhost:~$ aptitude -vvv moo
¡Para!

Recuerda que las opciones múltiples pueden ser introducidas por separado o combinadas:

aptitude -v -v moo
aptitude -vv moo

¡Sigue añadiendo las opciones -v para que veas cuántas respuestas únicas puedes obtener!
Imprimiendo un Directorio de Trabajo

 ⁠Para descubrir dónde estás ubicado actualmente en el sistema de archivos, puedes utilizar el
comando pwd. El comando pwd imprime el directorio de trabajo, tu ubicación actual en el
sistema de archivos:

pwd [OPCIONES]

Para considerar
¡Aún no enciendas tu impresora! En los inicios de la informática la salida de línea de
comandos sería enviada a las impresoras físicas. Este método fue reemplazado por pantallas
de video que pueden mostrar la información más rápidamente. Todavía usamos la
palabra imprimir (o «print» en inglés) a pesar de que la salida sólo se está visualizando en la
pantalla.

sysadmin@localhost:~$ pwd
/home/sysadmin

La salida del comando anterior indica que el usuario está actualmente en su carpeta de inicio,
que se muestra en el sistema de archivos a continuación.

Para considerar
Observa que nuestras máquinas virtuales emplean un prompt que muestra el directorio actual
de trabajo, acentuado con el color azul. En el primer prompt abajo, el ~ azul es equivalente
a /home/sysadmin, que representa el directorio de inicio del usuario.
sysadmin@localhost:~$

Después de cambiar de directorios, también puede confirmarse la nueva ubicación en el


nuevo prompt, que de nuevo aparece en azul.
sysadmin@localhost:/etc/calendar$

Cambiando Directorios

Los archivos se utilizan para almacenar datos tales como texto, gráficos y programas. Los
directorios se utilizan para guardar archivos y proporcionar una estructura de organización
jerárquica. La imagen de abajo muestra una versión abreviada de la estructura del sistema de
archivos en las máquinas virtuales.

Al iniciar una máquina virtual nueva, abriendo el curso o después usando el botón reiniciar,
estás registrado como usuario sysadmin en tu directorio de inicio:
Para navegar por la estructura del sistema de archivos, utiliza el comando de cd (change
directory o «cambiar directorio» en español) para cambiar directorios.

cd [opciones] [ruta]

Si nos fijamos en el gráfico anterior, el directorio Documents está ubicado en el


directorio home, donde se encuentra actualmente. Para moverte a un directorio desde tu
ubicación actual, utilizalo como argumento para el comando cd:

sysadmin@localhost:~$ cd Documents
sysadmin@localhost:~/Documents$

Los directorios equivalen a las carpetas en Windows y Mac OS. Al igual que estos sistemas
operativos más populares, una estructura de directorios de Linux tiene un nivel superior. No se
llama «Mi PC», sino más bien el directorio root (o «raíz» en español) y está representado por
el carácter /. Para moverse al directorio raíz, utiliza el carácter / como argumento para el
comando cd.

sysadmin@localhost:~$ cd /
El argumento para el comando cd es más que sólo el nombre de un directorio, en realidad es
una ruta de acceso (o «path» en inglés). Una ruta de acceso es una lista de directorios
separados por el carácter /. Por ejemplo, /home/sysadmines la ruta de acceso a tu
directorio de inicio:

Si piensas en el sistema de archivos como un mapa, las rutas de acceso son las indicaciones
paso a paso; pueden ser utilizadas para indicar la ubicación de cualquier archivo dentro del
sistema de archivos. Hay dos tipos de rutas de acceso: absoluta y relativa. Las rutas absolutas
comienzan con el directorio raíz del sistema de archivos, las rutas relativas se consideran a
partir de tu ubicación actual en el sistema de archivos.

Las Rutas Absolutas


Una ruta absoluta te permite especificar la ubicación exacta de un directorio. Siempre empieza
en el directorio raíz, por lo tanto siempre comienza con el carácter /. La ruta al directorio de
inicio /home/sysadmin es una ruta absoluta. La ruta comienza en el directorio raíz /, pasa al
directorio home y luego al directorio sysadmin. Siguiendo este camino en una interfaz gráfica
de usuario (GUI) como tu computadora de casa, se vería algo como esto:
Utiliza esta ruta como el argumento para el comando cd para retroceder al directorio de inicio
del usuario sysadmin.

sysadmin@localhost:/$ cd /home/sysadmin
sysadmin@localhost:~$

Si no hay salida, esto significa que el comando tuvo éxito. Sigue adelante y confírmalo
mediante el comando pwd:

sysadmin@localhost:~$ pwd
/home/sysadmin

Las Rutas Relativas


Una ruta de acceso relativa da instrucciones a un archivo con respecto a tu ubicación actual
en el sistema de archivos. Las rutas relativas no empiezan con el carácter /, empiezan con el
nombre de un directorio. Observa de nuevo el primer ejemplo del comando cd. El argumento
es un ejemplo de la ruta de acceso relativa más simple: el nombre de un directorio en tu
ubicación actual.

sysadmin@localhost:~$ cd Documents
sysadmin@localhost:~/Documents$
La siguiente imagen muestra un mapa de los archivos contenidos en el directorio sysadmin.
Actualmente estás ubicado en el directorio Documents y quieres moverte al directorio Art:

Una ruta de acceso relativa comienza con el directorio actual. Sin embargo, no lo incluye en la
ruta. Primero pasa al directorio School, y luego al directorio Art. Utiliza el carácter / para
separar los nombres de directorio. El resultado School/Art es una ruta relativa desde el
directorio Documents al directorio Art.
Utiliza la ruta relativa como un argumento para el comando cd para entrar al directorio Art.

sysadmin@localhost:~/Documents/$ cd School/Art
sysadmin@localhost:~/Documents/School/Art$

Utiliza el comando pwd para confirmar el cambio:

sysadmin@localhost:~/Documents/School/Art$ pwd
/home/sysadmin/Documents/School/Art

Para considerar

La salida del comando pwd es la ruta absoluta al directorio School.


También indicado como:
Para considerar
En el ejemplo anterior el comando cd había seguidola ruta de acceso School/Art:
cd School/Art

 ⁠

Una ruta de acceso puede también dividirse en múltiples comandos cd. El siguiente conjunto
de comandos lograría los mismos resultados:
cd School
cd Art

Los Accesos Directos o Atajos


El Carácter ..
Sin importar en qué directorio estás, .. siempre representa un directorio superior relativo al
directorio actual. Para moverte desde el directorio Art de regreso al directorio School:
sysadmin@localhost:~/Documents/School/Art$ cd ..
sysadmin@localhost:~/Documents/School$

El Carácter « . »
Sin importar en qué directorio estás, el carácter . siempre representa tu directorio actual. Para
el comando cd este acceso directo no es muy útil, pero será muy útil para otros comandos.
El carácter ~

El directorio de inicio del usuario actual está representado por el carácter ~. Como se
mencionó anteriormente, siempre comienzas como un usuario sysadmin, y su inicio se
encuentra en /home/sysadmin. Para volver a tu directorio de inicio en cualquier momento
puedes ejecutar el siguiente comando:

sysadmin@localhost:~/Documents/School$ cd ~

Вам также может понравиться