Introducción a la interfaz de línea de comandos

Para los lectores en casa: este capitulo es visto en el video Tu nuevo amigo: línea de comandos.

Es emocionante, ¿verdad? Vas a escribir tu primera línea de código en pocos minutos! :)

Permítenos presentarte a tu primer nuevo amigo: ¡la línea de comandos!

Los siguientes pasos te mostrarán cómo usar aquella ventana negra que todos los hackers usan. Puede parecer un poco aterrador al principio pero es solo un mensaje en pantalla que espera a que le des órdenes.

Nota Ten en cuenta que a lo largo de este libro usamos los términos 'directorio' y 'carpeta' indistintamente pero son la misma cosa.

¿Qué es la línea de comandos?

La ventana, que generalmente es llamada línea de comandos ó interfaz de línea de comandos, es una aplicación basada en texto para ver, manejar y manipular archivos en tu ordenador. Similar a Windows Explorer o Finder en Mac, pero sin la interfaz gráfica. Otros nombres para la línea de comandos son: cmd, CLI, prompt -símbolo de sistema-, console -consola- o terminal.

Abrir la interfaz de línea de comandos

Lo primero que debemos hacer para empezar a experimentar con nuestra interfaz de línea de comandos es abrirla.

Opening: Windows

Ve a Menú de inicio → Windows System → Command Prompt.

En versiones anteriores de Windows, busca en Menú de inicio → Todos los programas → Accesorios → Command Prompt.

Opening: OS X

Ve a Aplicaciones → Utilidades → Terminal.

Opening: Linux

Probablemente estará en Aplicaciones → Accesorios → Terminal, pero en tu sistema puede estar en un sitio distinto. Si no lo encuentras, busca en Google. :)

Símbolo del Sistema (Prompt)

Ahora deberías ver una ventana blanca o negra que está esperando tus órdenes.

Prompt: OS X and Linux

Si estás en un Mac o Linux, seguramente verás un símbolo $, como este:

command-line

$
Prompt: Windows

En Windows, es un signo así >, como este:

command-line

>

Cada comando será precedido por este signo y un espacio, pero no tienes que escribirlo. Tu computadora lo hará por ti. :)

Sólo una pequeña nota: en tu caso puede que haya algo como C:\Users\ola> o Olas-MacBook-Air:~ ola$ antes del símbolo prompt y eso está perfecto.

La parte hasta e incluyendo $ o > se llama la línea de comandos o prompt. Esta te solicita escribir algo ahí.

En el tutorial, cuando queremos escribir un comando, incluiremos el $ o > y de vez en cuando más a la izquierda. Ignora la parte izquierda y teclea sólo el comando, que es lo que empieza después del prompt.

Tu primer comando (¡BIEN!)

Comencemos escribiendo este comando:

Your first command: OS X and Linux

command-line

$ whoami
Your first command: Windows

command-line

> whoami

Y pulsa enter. Este es nuestro resultado:

command-line

$ whoami olasitarska

Como puedes ver, el ordenador ha imprimido tu nombre de usuario. Genial, ¿eh? :)

Trata de escribir cada comando, no copies y pegues. ¡Te acordarás más de esta manera!

Fundamentos

Cada sistema operativo tiene un conjunto diferente de comandos para la línea de comandos, así que asegúrate de seguir las instrucciones para tu sistema operativo. Vamos a intentarlo, ¿de acuerdo?

Directorio actual

Estaría bien saber dónde estamos ahora, ¿verdad? Vamos a ver. Escribe este comando y pulsa intro:

Current directory: OS X and Linux

command-line

$ pwd
/Users/olasitarska

Nota: 'pwd' significa 'print working directory' - en español, 'mostrar directorio de trabajo'.

Current directory: Windows

command-line

> cd 
C:\Users\olasitarska

Nota: 'cd' significa 'cambiar directorio'. Con powershell se puede utilizar pwd al igual que en Linux o Mac OS X.

Probablemente verás algo similar en tu máquina. Una vez que abres la línea de comandos generalmente empiezas en el directorio home de tu usuario.


Listar ficheros y directorios

¿Qué hay aquí? Sería bueno saber. Veamos:

List files and directories: OS X and Linux

command-line

$ ls
Applications
Desktop
Downloads
Music
...
List files and directories: Windows

command-line

> dir
Directory of C:\Users\olasitarska
05/08/2014 07:28 PM <DIR> Applications
05/08/2014 07:28 PM <DIR> Desktop
05/08/2014 07:28 PM <DIR> Downloads
05/08/2014 07:28 PM <DIR> Music
...

Nota: En powershell también puedes utilizar 'ls' como en Linux y Mac OS X.


Cambia el directorio actual

Ahora, vayamos a nuestro directorio Desktop, el escritorio:

Change current directory: OS X and Linux

command-line

$ cd Desktop
Change current directory: Windows

command-line

> cd Desktop

Comprueba si realmente ha cambiado:

Check if changed: OS X and Linux

command-line

$ pwd 
/Users/olasitarska/Desktop
Check if changed: Windows

command-line

> cd 
C:\Users\olasitarska\Desktop

¡Aquí está!

Truco pro: si escribes cd D y luego pulsas tab en el teclado, la línea de comandos automáticamente completará el resto del nombre para que puedas navegar más rápido. Si hay más de una carpeta que empiece con "D", dale al botón tab dos veces para obtener una lista de opciones.


Crear directorio

¿Qué tal si creamos un directorio de práctica en el escritorio? Lo puedes hacer de esta manera:

Create directory: OS X and Linux

command-line

$ mkdir practice
Create directory: Windows

command-line

> mkdir practice

Este pequeño comando creará una carpeta con el nombre practice en el escritorio. Puedes comprobar que efectivamente está allí mirando en tu Escritorio o ejecutando un comando ls o dir. ¡Inténtalo! :)

Truco pro: Si no quieres escribir una y otra vez los mismos comandos, prueba pulsando la flecha arriba y la flecha abajo de tu teclado para ir pasando por los comandos utilizados recientemente.


¡Ejercicios!

Un pequeño reto para ti: en el directorio practice que acabas de crear crea un directorio llamado test. (Utiliza los comandos cd y mkdir.)

Solución:

Exercise solution: OS X and Linux

command-line

$ cd practice
$ mkdir test
$ ls
test
Exercise solution: Windows

command-line

> cd practice
> mkdir test
> dir
05/08/2014 07:28 PM <DIR> test

¡Enhorabuena! :)


Limpieza

No queremos dejar un lío, así que vamos a eliminar todo lo que hemos hecho hasta este momento.

En primer lugar, tenemos que volver al escritorio:

Clean up: OS X and Linux

command-line

$ cd ..
Clean up: Windows

command-line

> cd ..

Usar .. con el comando cd hará que cambie el directorio actual al directorio padre (el que contiene el directorio actual).

Revisa dónde estás:

Check location: OS X and Linux

command-line

$ pwd 
/Users/olasitarska/Desktop
Check location: Windows

command-line

> cd 
C:\Users\olasitarska\Desktop

Es el momento de eliminar el directorio practice:

Atención: Eliminar archivos utilizando del, rmdir o rm hace que no puedan recuperarse, lo que significa que los archivos borrados desaparecerán para siempre! Así que ten mucho cuidado con este comando.

Delete directory: Windows Powershell, OS X and Linux

command-line

$ rm -r practice
Delete directory: Windows Command Prompt

command-line

> rmdir /S practice
practice, Are you sure <Y/N>? Y

¡Hecho! Para asegurarnos de que realmente se ha eliminado, vamos a comprobarlo:

Check deletion: OS X and Linux

command-line

$ ls
Check deletion: Windows

command-line

> dir

Salida

Esto es todo por ahora! Ya puedes cerrar la línea de comandos sin problema. Vamos a hacerlo al estilo hacker, ¿vale? :)

Exit: OS X and Linux

command-line

$ exit
Exit: Windows

command-line

> exit

Genial, ¿no? :)

Resumen

Aquí hay una lista de algunos comandos útiles:

Comando (Windows) Comando (Mac OS / Linux) Descripción Ejemplo
salida salida Cierra la ventana salida
cd cd Cambia el directorio cd test
cd pwd Mostrar el directorio actual cd (Windows) o pwd (Mac OS / Linux)
dir ls Lista directorios/archivos dir
copy cp Copia de archivos copy c:\test\test.txt c:\windows\test.txt
move mv Mueve archivos move c:\test\test.txt c:\windows\test.txt
mkdir mkdir Crea un nuevo directorio mkdir testdirectory
rmdir (o del) rm Eliminar un archivo del c:\test\test.txt
rmdir /S rm -r Eliminar un Directorio rm -r testdirectory

Estos son sólo unos pocos de los comandos que se pueden ejecutar en la línea de comandos, pero hoy no vas a utilizar ninguno más.

Si tienes curiosidad, ss64.com contiene una referencia completa de comandos para todos los sistemas operativos.

¿Listo?

¡Vamos a sumergirnos en Python!

results matching ""

    No results matching ""