Conecta con nosotros
línea de comandos de Windows línea de comandos de Windows

Guías

Todo lo que tienes que saber de las herramientas de línea de comandos de Windows

Publicado

el

Las herramientas de línea de comandos de Windows siguen siendo tan útiles hoy como lo eran en los tiempos de los sistemas operativos basados en texto. Su uso no es tan intuitivo como el de las interfaces gráficas modernas (mucho más visuales y sencillas de manejar), pero todavía muestran un enorme potencial a la hora de realizar determinadas tareas.

Aunque este tipo de aplicaciones recuerde a MS-DOS por su tipo de ejecución, no se trata del sistema operativo basado en DOS ni es una parte del sistema Windows, sino una herramienta que permite interactuar directamente con el equipo a base de ejecución de comandos. Lo que conocemos como ‘consola de Windows’ es equivalente a la terminal de Linux o la que proporcionan otros sistemas operativos como macOS. Visualmente son bastante similares, pero en la práctica ofrecen diferencias significativas.

En cualquier caso es una buena manera de realizar tareas repetitivas con mayor flexibilidad, gestionar determinados componentes, acceder a cierta información del sistema que no está disponible de ninguna otra manera o usar en situaciones cuando se bloquea la interfaz gráfica. Muy usada por administradores de sistemas, también es útil para el usuario de a pie y conviene saber al menos su funcionamiento básico.

Tipos y accesos a la línea de comandos de Windows

Para saber de dónde vienen estas herramientas (hoy en Windows conviven dos diferentes) hay que remontarse a Windows 95 donde Microsoft incluyó un intérprete primitivo conocido como COMMAND.COM. A partir de Windows NT (Windows XP y siguientes) estrenó una aplicación de línea de comandos denominado «cmd.exe» o como se conoce comúnmente, símbolo del sistema (Command prompt o CMD). Con algunas mejoras, ha llegado hasta nuestros días como la consola básica de Windows y permite ejecutar comandos MS-DOS (.exe de 16 bits) y otros como scripts con formato .bat y .sys.

línea de comandos de Windows

Pero hay más. Microsoft comenzó a trabajar a comienzos de siglo en una consola más avanzada que las anteriores. Conocido en su desarrollo como Microsoft Shell o «Monad» vio la luz integrado en Windows Vista como PowerShell. Es una interfaz de consola (CLI) que va más allá de las prestaciones del CMD ya que permite crear sus propios comandos y secuencias de comandos utilizando el lenguaje de programación C#, además de características como la ejecución remota de tareas, tareas en segundo plano, automatización de tareas o canalización de comandos. Es la opción preferida para administradores de sistemas y los usuarios más avanzados, pero la curva de aprendizaje es superior al intérprete básico CMD.

Dos modos de uso

Otra cuestión a conocer es que el acceso a la línea de comandos de Windows se ofrece en dos modos, usuario y administrador. El primero limitado y el segundo más potente y con acceso a todas las funciones. Hay bastantes maneras de acceder a la consola de Windows, como:

  • Teclear «CMD» o “PowerShell» desde el cuadro de búsqueda general de cualquier versión de Windows para acceder a una u otra.
  • También puedes ponerlas en marcha desde la ventana ejecutar (Windows + R para abrirlo) y teclear “cmd” o “PowerShell».
  • Finalmente, otro método muy sencillo de acceso es accediendo al menú de inicio avanzado, pulsando con el botón derecho del ratón sobre el botón de inicio.

Windows Terminal

Con el objetivo de facilitar el uso de la consola, Microsoft creó una aplicación independiente, gratuita y de código abierto, que definió como la «herramienta definitiva» para trabajar con las dos aplicaciones de línea de comandos presentes en sus sistemas operativos. Si usas Linux te sonará su apellido porque esta herramienta –como otras avanzadas de Windows– está claramente inspirada en su homóloga de Linux hasta en su nombre.

Desarrollada de manera externa a Windows, puede recibir actualizaciones y mejoras individuales sin tener que esperar a las regulares del sistema operativo. Microsoft la clasificó como una de las aplicaciones de «bandeja de entrada» y por ello, además de poder instalarse desde la Microsoft Store o su página de GitHub, se incluye en el grupo de aplicaciones que de manera predeterminada instala en Windows 10 y Windows 11.

Al igual que el CMD o el Powershell, Windows Terminal se ejecuta en modo texto, pero ofrece un mayor grado de personalización en diseño, colores o fuentes, pestañas y más que no tienen los anteriores. Microsoft no tiene planes para eliminar las aplicaciones individuales, pero Windows Terminal se ha convertido en la herramienta de línea de comandos definitiva para interactuar con ellas y también con otras relacionadas como el Subsistema de Windows para Linux, permitiendo su ejecución desde la misma interfaz.

Uso y comandos principales

Tanto si utilizas Windows Terminal como el CMD o PowerShell, te encontrarás con una interfaz de texto que como decíamos te recordará a los sistemas DOS, aunque no se trata de un sistema operativo. Esta línea de comandos permite comunicarnos directamente con el equipo. Su funcionamiento es tan simple como potente: Escribimos el comando y la aplicación CMD hace de intérprete para su ejecución.

El uso de modificadores para cada uno de los comandos permite ejecutar centenares de combinaciones para una amplia variedad de tareas. Aunque su funcionamiento es un modo texto, la consola puede ser personalizada en diseño, colores o fuentes accediendo a su propiedades mediante un clic secundario en el marco del CMD. Windows Terminal tiene características añadidas como el uso de pestañas y otras.

Los comandos son comunes a todas ellas. Te dejamos algunos de los más importantes porque la lista completa es amplísima:

Help. Una buena forma de comenzar es mediante el comando “help” que nos mostrará una lista con todos los comandos disponibles. “Help + nombre de comando” nos mostrará información sobre un comando específico mientras que “Nombre de comando + /?” nos mostrará todos los modificadores y posibilidades del comando.

Assoc. La mayoría de los archivos de Windows están asociados con un programa específico asignado para abrir el archivo por defecto. Este comando muestra o modifica las asociaciones de las extensiones de archivos.

Chkdsk. Comprueba el estado de un disco duro/partición/volumen y muestra un informe de estado. Corrige errores del disco o encuentra sectores dañados y recupera información.

Driverquery. Los controladores de dispositivos se encuentran entre el software más importante instalado en el PC. Su eliminación o mala instalación es constante fuente de problemas. Este comando lista todos los que tienes en la máquina, su nombre, tipo de controlador, fecha de vínculo o directorio donde está instalado.

Powercfg. Potente comando para la gestión energética del equipo. Estados de ahorro energético, suspensión o hibernación. Crea un informe detallado del consumo de energía en un PC que permite conocer un fallo por este motivo. Windows 8 ha añadido un modificador que proporciona un análisis detallado del uso de la batería de un portátil, capacidad, estado de carga o ciclos de recarga.

Shutdown. Apaga, reinicia o hiberna el equipo local. Tiene un montón de modificadores para planificar en tiempo el apagado o reinicio, un cierre de sesión además de forzar el apagado de aplicaciones. También se usa para documentar un cierre inesperado del sistema.

Sfc. Examina la integridad de todos los archivos de sistema protegidos y reemplaza las versiones incorrectas por las correctas de Microsoft. El comando verifica archivos dañados o que falta, reemplazándolos automáticamente utilizando copias en caché del sistema.

Systeminfo. Muestra información de la configuración del sistema operativo de un equipo local o remoto, incluyendo niveles de Service Pack. Informa del procesador instalado, la memoria RAM física y virtual usada y disponible, la BIOS, el fabricante de la placa base, así como la versión del sistema operativo utilizada y todas las actualizaciones instaladas.

También hay grupos de comandos especializados en determinadas tareas como las destinadas a redes, proporcionando una capacidad de gestión e información que simplemente no existe en otro lado del sistema operativo. Los más útiles en este apartado son:

Ipconfig. Es uno de los comandos para redes más útiles. Informa de los valores de configuración de red TCP/IP actuales y actualiza la configuración del protocolo DHCP y el sistema de nombres de dominio (DNS).

Ping. Prueba el estado de la comunicación del host local con uno o varios equipos remotos de una red IP. Por medio del envío de paquetes ICMP, diagnostica el estado, velocidad y calidad de una red determinada.

Tracert. Permite conocer los paquetes que vienen desde un host (punto de red). También se obtiene una estadística del RTT o latencia de red de esos paquetes, ofreciendo una estimación de la distancia a la que están los extremos de la comunicación.

Pathping. Combina la utilidad de ping y tracert. Es más informativo, por lo que tarda más tiempo para ejecutar. Después de enviar los paquetes a un destino determinado, se analiza la ruta tomada y se calcula la pérdida de paquetes y proporciona detalles entre dos host.

Getmac. Obtiene la mac del equipo donde se ejecuta. La dirección MAC es un identificador de 48 bits determinado y configurado por el IEEE y el fabricante (24 bits cada uno). Conocida también como dirección física es única para cada dispositivo.

Nslookup. Se emplea para conocer si el DNS está resolviendo correctamente los nombres y las IPs. También nos permite averiguar la dirección IP detrás de un determinado nombre de dominio. Si deseas convertir una dirección IP en un nombre de dominio, sólo tienes que escribirlo en el navegador y ver a dónde conduce.

Netstat. Comando potente que muestra estadísticas de la red y permite diagnósticos y análisis. Por defecto, muestra un listado de las conexiones activas de una computadora, tanto entrantes como salientes. Incluye el protocolo en uso, las tablas de ruteo, las estadísticas de las interfaces y el estado de la conexión.

Netsh. Sinónimo de shell de red, permite modificar, administrar y diagnosticar la configuración de una red, con más detalle y potencia que los anteriores. Un comando avanzado que ofrece un montón de opciones utilizando sus modificadores y que como ejemplo, permite cambiar el DNS primario y secundario de un equipo.

Trucos para manejar la línea de comandos de Windows

Ya decíamos que el uso de la consola de Windows no es tan sencillo ni intuitivo como el de una interfaz gráfica. Pero hay una serie de trucos muy convenientes para facilitar su manejo, como los que te vamos a listar.

1. Usa las teclas de función. La mayoría de las teclas de función (F1 a F9) cumplen una función en la consola de Windows:

  • F1: Vuelve a escribir el último comando utilizado, carácter por carácter por pulsación.
  • F2: Pregunta por un carácter, luego vuelve a escribir el último comando utilizado hasta la primera aparición de ese caracter.
  • F3: Vuelve a escribir completamente el último comando utilizado.
  • F4: Solicita un carácter, luego borra todos los caracteres en el comando actual, comenzando desde la posición del cursor hasta la primera aparición del carácter solicitado.
  • F5: Vuelve a escribir completamente los comandos utilizados anteriormente, pero no se activa.
  • F6: Tipos ^ Z en el comando actual.
  • F7: Presenta un menú de comandos utilizados anteriormente.
  • F8: Reescribe completamente los comandos usados ??anteriormente.
  • F9: Vuelve a escribir completamente un comando utilizado previamente, que corresponde al número en el menú presentado por F7.

2. Ve el historial de comandos. Cuando quieras ver todos los comandos que has escrito desde el comienzo de la sesión, puedes utilizar la orden “doskey /history”. Doskey es una utilidad proporcionada por Microsoft con varias funciones, una de las cuales es el historial de comandos. Básicamente es lo mismo que presionar F7, pero además, permite guardar, alimentar o manipular la salida de información.

3. Repite un comando anterior. Si necesita recuperar un comando anterior, ya sea para repetirlo o modificarlo, todo lo que tiene que hacer es presionar la tecla de flecha hacia arriba de tu teclado. Si continúas presionándolo, seguirá repitiendo comandos anteriores empezando por el más reciente. Funcionalmente es parecido a utilizar la tecla F8 excepto por una diferencia: la flecha arriba coloca el cursor al final del comando mientras que F8 coloca el cursor al inicio del comando.

4. Ejecuta varios comandos a la vez. Si necesitas ejecutar múltiples comandos, pero cada uno de ellos requiere mucho tiempo de ejecución, puedes adelantarte con la orden “cd C: && echo…”. Los comandos se ejecutarán en el orden en que los escribiste, comenzando desde la izquierda hasta la derecha de la consola. Los nuevos comandos no se ejecutan hasta que van terminando los anteriores.

5. Cancela un comando en ejecución. Si alguna vez ejecutas un comando y tarda demasiado tiempo en ejecutarlo, puedes detenerlo pulsando “Ctrl + C”. Una función también útil cuando quieres detener una aplicación o servicio.

6. Visualiza información, página por página. La mayoría de los comandos de Windows producen salida de información en la pantalla. A veces, muestra una cantidad de información enorme que incluso queda inaccesible aunque te desplaces hacia arriba. Con la orden “[command with output] | more” conseguimos que la consola muestra la información página por página, pasando de una a otra con la pulsación de la tecla de barra espaciadora.

7. Filtra la salida de un comando. Si el resultado de un comando es detallado y necesitas encontrar una línea o instancia particular de una palabra, puedes filtrar el resultado con la orden “[command with output] | find “query”. El filtro de búsqueda se aplica línea por línea, por lo que devolverá todas las líneas que incluyan el texto de la consulta.

8. Copia la salida de un comando. Si buscas ayuda para solucionar un problema del sistema, puedes necesitar sacar la información a una herramienta externa. Y es engorroso si no utilizas una orden como “[command with output] | clip” que copia la información al portapapeles. Desde ahí, con la orden típica “Control + V”, puedes copiarla donde quieras.

9. Guarda la salida de un comando. Si tu intención es guardar el resultado de un comando en un archivo, puede usar el método anterior o directamente enviarlo a un archivo con la función “[command with output] > filename.txt”. El archivo de texto se guardará en la ubicación del símbolo del sistema que estés usando, aunque puedes guardarlo en cualquier otra fijando la ruta completa “… C:\folder\filename.txt)”.

10. Arrastra y suelta archivos. Si estás trabajando con archivos en un directorio profundamente anidado y necesitas sus nombres de ruta completos para un comando, tienes algunas opciones. Puede escribirlos manualmente. Puedes copiar la ruta desde la barra de direcciones del Explorador de archivos y luego escribir el nombre del archivo. O simplemente puede arrastrar y soltar el archivo directamente en el símbolo del sistema.

Los comandos y trucos anteriores sólo son una muestra de las grandes posibilidades de la consola de Windows. El que quiera más puede utilizar la interfaz de consola (CLI) PowerShell (más potente que el CMD) y el que busque reunificar todo y -de paso- acceder al Subsistema de Windows para Linux, en Windows Terminal tiene todo lo que busque. Tan acostumbrados a las modernas interfaces gráficas, costará iniciarte en este tipo de herramientas que funcionan en modo texto, pero que siguen siendo muy recomendables para determinadas tareas.

Lo más leído