FLOSS Manuals

 English |  Español |  Français |  Italiano |  Português |  Русский |  Shqip

Introducción a la línea de comandos

Póngase en el Comando

Los comandos te permiten versatilidad. Te lo demostraremos a partir de una tarea con la que seguramente estás familiarizado. Imaginemos que tienes una cámara digital. Es probable que tengas una carpeta repleta de fotos en alguna computadora. Imaginemos que deseas redimenzionar la imagen "profile.jpg" a 300 pixeles de ancho y luego guardarla como una imagen nueva llamada "profile_min.jpg"

Usando un editor de imágenes con GUI (Graphical User Interface, o interfaz gráfica de usuarios) los pasos que necesitas dar son los siguientes:

  1. Abrir un editor de imágenes desde el menú de aplicaciones.
  2. Seleccionar la pestaña Archivo(File)>Abrir(Open).
  3. Buscar y seleccionar la carpeta donde está almacenada la foto.
  4. Hacer click (o doble click) sobre el ícono o nombre de la imagen y seleccionar el botón Abrir(Open).
  5. Seleccionar la pestaña Imágenes(Image)>Redimensionar(Resize).
  6. Cambiar el ancho de la imagen a 300 pixeles y hacer click en Escalar(Scale).
  7. Selecionar la pestaña Archivo(File)>Guardar como(Save as).
  8. Ingresar el nombre profile_min.jpg y click en Guardar(Save).

Con la línea de comandos puedes obtener el mismo resultado ingresando:

convert -resize 300 profile.jpg profile_min.jpg

Esto es un solo paso en la linea de comandos, en lugar de ocho usando el editor de imágenes.
Quizás aún consideres que el tiempo que implica leer este libro y estudiar la linea de comandos no amerita el ahorro de siete pasos. ¿Pensarías igual si las imágenes a redimensionar fueran treinta? ¿Todavía elegirías abrir cada imagen individualmente y repetirías el proceso treinta veces usando el editor de imágenes?. Esa decisión implicaría un total de doscientos cuarenta pasos.¿No elegirías un solo comando para realizar ese trabajo ?

Un solo comando puede realizar la misma tarea, ya sean treinta, trescientas o tres mil imágenes. Esta es una razón convincente para comenzar a utilizar la línea de comandos. La curva de aprendizaje puede avanzar lentamente en principio. Pero con el tiempo ahorrarás más tiempo del que implica el aprendizaje.
Todavía más importante es que aprendiendo a manejar comandos descubrirás posibilidades interesantes y formas divertidas de hacer el trabajo. Déjanos mostrarte algunas otras razones de por qué conocer la linea de comando es una buena idea.

Las ventajas de usar comandos

¡Muchas de las personas que prueban la línea de comando se maravillan tanto acerca de las posibilidades que ya no desean regresar a las interfaces gráficas de usuario(GUI)!.¿Por qué?. Bueno, en resumen, la línea de comandos ofrece ventajas, descritas a continuación, por sobre el software gráfico:

-Flexibilidad: Con el software gráfico es común que alcances un límite. Simplemente no puedes hacer aquello que deseas y necesitas encontrar formas suplementarias de trabajo para sortear los límites del programa.
Con la línea de comandos, puedes combinar comandos para alcanzar un rango virtualmente infinito de nuevas e interesantes funciones. Combinando comandos de forma creativa puedes hacer que la línea de comandos haga exactamente aquello que quieres que haga. Tú controlas tu informática.

Confiabilidad: Los programas gráficos suelen ser inmaduros e incluso, y por esto, inestables. En contraste, la mayoría de las herramientas que la linea de comandos ofrece son realmente confiables.
Una de las razones para confiar se debe a la madurez de las mismas.
Los programas más antiguos de la linea de comandos datan de fines de los setentas. Esto significa que esos comandos han estado sometidos a examen por más de cuatro décadas.
Esto también significa que han tendido a funcionar de la misma manera sobre diferentes sistemas operativos.(2) No así las herramientas gráficas.
Si tú deseas una navaja suiza puedes disponer de ella. Se llama linea de comandos.  

(2)N.del T.: Muchas herramientas de la linea de comandos son funcionalidades del sistema Unix que el Proyecto GNU decidió imitar, para así permitir la migración de los usuarios de Unix al Sistema GNU (si se necesita referencia, puede encontrarse en el libro "Software libre para una sociedad libre" de Richard Stallman). Las licencias libres de estas herramientas permiten dar a conocer los códigos fuente a la comunidad. Ésta se ocupa de conocer las funcionalidades, preservando las que funcionan correctamente, descartando o modificando aquellas que presentan problemas o errores, y agregando nuevas funcionalidades.
La confiabilidad de muchas herramientas brota de su antiguedad, pero también de su condición de software libre.

Velocidad: Los bonitos entornos gráficos consumen muchísimos recursos de hardware, y un resultado de esto es una mayor lentitud e inestabilidad. Por otro lado, la linea de comandos utiliza los recursos de la computadora de forma más austera, dajándoles utilizar la memoria y el poder de procesamiento a las tareas que en ese momento estás tratando de realizar.
La linea de comandos es intrínsecamente más rápida. En lugar de tener que clickear buscando a través de largas cadenas de menúes gráficos, tú puedes ingresar comandos tecleando un poco y, de ser necesario, aplicar el comando a múltiples archivos. Si eres rápido para tipear, esto te permitirá incrementar drásticamente tu productividad.

Experiencia: Usar la línea de comandos es una gran experiencia de aprendizaje. Cuando usas la línea de comandos te comunicas de forma más directa con la computadora. Y por ese motivo, aprendes mucho más acerca de su funcionamiento interno. Usar la línea de comandos con regularidad es un de los pasos fundamentales para llegar a ser un gurú de los sistemas GNU/linux.

Diversión: ¿Alguna vez deseaste ser como esos hackers que logran que una máquina con GNU/linux haga cosas inimaginables?. Una vez que aprendas a usar esta poderosa heraamienta, te encontrarás haciendo cosas interesantes y divertidas que nunca habías imaginado.

El valor de los scripts (guiones)(3)

(3)N.del T.: Mantengo el término script en el inglés original debido a la popularidad del mismo en la comunidad hispanoparlante de usuarios de GNU/Linux. El uso y la comprensión complejos de los scripts también se difundió con una palabra inglesa: scripting. La incapacidad de reemplazar la palabra script puede deberse en parte a que la palabra que se propuso para reemplazarla, guión, como el de una obra teatral, es ambigua y también remite al caracter "-", muy utilizado en informática.

Pero espera. ¡Aún hay más!. Puedes almacenar comandos en archivos de texto plano. Esos archivos son llamados scripts, ó guiones en algunas traducciones al castellano, y pueden ser ejecutados como reemplazo al tipeo de largos comandos. Por ejemplo, si almacenas comandos en un archivo llamado miscomandos.sh, ya no necesitarás ingresar esas líneas cada vez. Bastará con ingresar:

./miscomandos.sh

(4)N. del T.: Esto será así una vez que se le hayan dado permisos de ejecusión al archivo. Este es sólo un ejemplo ilustrativo de las posibilidades del script.

Además puedes combinar los comandos de formas simples, o de ser necesario, muy complejas. Más aún, puedes programar los scripts para que se ejecuten en un determinado horario o en un fecha determinada. O mismo ante un suceso específico en tu computadora.

Pudes también escribir scripts que acepten información adicional que tu desees ingresar. Por ejemplo. imagina un script de redimencionamiento de imágenes que deba preguntarte el tamaño resultante antes de comenzar el proceso.

¿Habías tratado de hacer algo remotamente parecido a esto usando la interfaz gráfica(GUI)?. Quizás ahora puedas ver cómo trabajando con la interfaz de línea de comandos(CLI, por sus siglas en inglés: Command Line Interface) comienza a abrirse un mundo completamente nuevo para el uso de las computadoras.

¿Está eneferma esta computadora?

La línea de comandos también es utilizada para comprobar el correcto funcionamiento de la computadora. Hay muchos comandos que puedes usar para verificar cada aspecto de la salud de la computadora. Desde la cantidad de espacio libre en el disco duro hasta la temperatura del CPU.
si la computadora muestra un desempeño pobre y deseas conocer el porqué, unos cuantos comandos te ayudarán a determinar de forma precisa si es un problema de hardware o de software, y te ayudarán a rectificar rapidamente el problema.

Extendiendo la red

Otra interesante característica de la línea de comandos que las GGI no pueden alcanzar es la interacción sobre la red. Imagina que tu computadora está en otra habitación y que tu deseas apagarla.¿Cómo hacer?¿Fácil? Digamos que te levantas, caminas hasta la computadora y presionas el botòn de apagado.

Ahora bien. Aquellos que sepan como conectar con la computadora en la otra habitación a través de la línea de comandos podrán simplemente ingresar el  comando "halt" y obtener el mismo resultado.

Esto puede parecer trivial. Quizás sea que aún resulte mejor para tí levantarte de tuy cómada silla y gastar cinco calorias caminando hasta el cuarto contiguo

There has been error in communication with Booktype server. Not sure right now where is the problem.

You should refresh this page.