Todo lo que puede hacer con el nuevo Bash Shell de Windows 10

La Actualización de aniversario de Windows 10 agregó soporte para entornos Linux a Windows 10 en 2016. Pero no se deje engañar: esto es más que un shell Bash. Es una capa de compatibilidad completa para ejecutar aplicaciones de Linux en Windows.

Hemos cubierto muchas de las cosas que puede hacer en el nuevo shell Bash de Windows 10, por lo que hemos reunido todas esas guías en una mega lista aquí, para su conveniencia.

Introducción a Linux en Windows

Puede instalar un entorno Linux y un shell Bash en cualquier edición de Windows 10, incluido Windows 10 Home. Sin embargo, requiere una versión de 64 bits de Windows 10. Solo tiene que habilitar la función Subsistema de Windows para Linux y luego instalar la distribución de Linux que elija, por ejemplo, Ubuntu, desde la Tienda Windows.

A partir de la actualización Fall Creators Update  a finales de 2017, ya no es necesario que habilite el modo de desarrollador en Windows, y esta función ya no es beta.

Instalar software de Linux

La forma más sencilla de instalar software Linux en su entorno Ubuntu (o Debian) es con el apt-getcomando . (El aptcomando también funciona). Este comando descarga e instala software de los repositorios de software de Ubuntu. Puede descargar e instalar una o más aplicaciones con un solo comando.

Como se trata de un entorno de espacio de usuario de Ubuntu más o menos completo, también puede instalar software de otras formas. Puede compilar e instalar software desde el código fuente tal como lo haría en una distribución de Linux, por ejemplo.

Si ha instalado otra distribución de Linux, utilice los comandos para instalar software en esa distribución específica. Por ejemplo, openSUSE usa el zyppercomando.

Ejecute varias distribuciones de Linux

La actualización Fall Creators también permitió el soporte para múltiples distribuciones de Linux, donde anteriormente solo estaba disponible Ubuntu. Inicialmente, puede instalar Ubuntu, openSUSE Leap, SUSE Linux Enterprise Server , Debian GNU / Linux o Kali Linux. Fedora también está en camino, y probablemente veremos más distribuciones de Linux ofrecidas en el futuro.

Puede tener varias distribuciones de Linux instaladas e incluso puede ejecutar varios entornos de Linux diferentes al mismo tiempo.

Si no está seguro de cuál instalar, le recomendamos Ubuntu. Pero, si necesita una distribución de Linux en particular, tal vez esté probando software que se ejecutará en un servidor que ejecuta SUSE Linux Enterprise Server o Debian, o si desea las herramientas de prueba de seguridad en Kali Linux, están disponibles en la Tienda junto con Ubuntu. .

Relacionado:  Cómo evitar que Windows se conecte automáticamente a una red Wi-Fi

Acceda a los archivos de Windows en Bash y a los archivos de Bash en Windows

Sus archivos de Linux y los archivos de Windows normalmente están separados, pero hay formas de acceder a sus archivos de Linux desde Windows y sus archivos de Windows desde el entorno Linux.

Las distribuciones de Linux que instala crean una carpeta oculta donde se almacenan todos los archivos utilizados en ese entorno Linux. Puede acceder a esta carpeta desde Windows si desea ver y hacer una copia de seguridad de los archivos de Linux con herramientas de Windows, pero Microsoft advierte que no debe modificar estos archivos de Linux con herramientas de Windows o crear nuevos archivos aquí con aplicaciones de Windows.

Cuando se encuentra en el entorno Linux, puede acceder a sus unidades de Windows desde la carpeta / mnt /. Su unidad C: está ubicada en / mnt / cy su unidad D: está ubicada en / mnt / d, por ejemplo. Si desea trabajar con archivos de los entornos Linux y Windows, colóquelos en algún lugar de su sistema de archivos de Windows y acceda a ellos a través de la carpeta / mnt /.

Montaje de unidades extraíbles y ubicaciones de red

El subsistema de Windows para Linux monta automáticamente unidades internas fijas en la carpeta / mnt /, pero no monta automáticamente unidades extraíbles como unidades USB y discos ópticos. Tampoco monta automáticamente ninguna unidad de red que pueda asignarse a su PC.

Sin embargo, puede montarlos usted mismo y acceder a ellos en el entorno Linux con un comando de montaje especial que aprovecha el sistema de archivos drvfs.

Cambiar a Zsh (u otro shell) en lugar de Bash

Si bien Microsoft presentó originalmente esta función como un entorno de «shell Bash», en realidad es una capa de compatibilidad subyacente que le permite ejecutar software Linux en Windows. Eso significa que puede ejecutar otros shells en lugar de Bash, si los prefiere.

Por ejemplo, puede utilizar el shell Zsh en lugar de Bash . Incluso puede hacer que el shell Bash estándar cambie automáticamente al shell Zsh cuando abra el acceso directo del shell de Linux en su menú Inicio.

Use Bash Scripts en Windows

Gracias a este entorno, en realidad es posible escribir un script de shell Bash en Windows y ejecutarlo. Su script Bash puede acceder a sus archivos de Windows almacenados en la carpeta / mnt, por lo que puede usar comandos y scripts de Linux para trabajar en sus archivos normales de Windows. También puede ejecutar comandos de Windows desde el script Bash.

Puede incorporar comandos de Bash en un script de Batch o en un script de PowerShell , lo cual es bastante útil. Para todo esto y más, consulte nuestra guía de scripts bash en Windows 10 .

Relacionado:  Cómo escribir un script por lotes en Windows

Ejecute comandos de Linux desde fuera del shell de Linux

Si solo desea iniciar rápidamente un programa, ejecutar un comando o ejecutar un script, ni siquiera necesita iniciar el entorno Bash primero. Puede usar el comando bash -co wslpara ejecutar un comando de Linux desde fuera del shell de Linux . El entorno Linux simplemente ejecuta el comando y luego se cierra. Si ejecuta este comando desde dentro de una ventana del símbolo del sistema o de PowerShell, el comando imprime su salida en las consolas del símbolo del sistema o PowerShell.

Puedes hacer mucho con bash -co wsl. Puede crear accesos directos de escritorio para iniciar programas de Linux, integrarlos en secuencias de comandos de PowerShell o por lotes, o ejecutarlos de cualquier otra forma en que ejecute un programa de Windows.

Ejecutar programas de Windows desde Bash

A partir de Creators Update  (que se publicó en la primavera de 2017), puede ejecutar programas de Windows desde el entorno Linux . Esto significa que puede integrar comandos de Windows junto con comandos de Linux en un script de Bash, o simplemente ejecutar comandos de Windows desde el shell estándar de Bash o Zsh que ya esté usando.

Para ejecutar un programa de Windows, escriba la ruta a un archivo .exe y presione Entrar. Encontrará sus programas de Windows instalados en la carpeta / mnt / c en el entorno Bash. Recuerde, el comando distingue entre mayúsculas y minúsculas, por lo que «Example.exe» es diferente de «example.exe» en Linux.

Ejecute programas gráficos de escritorio Linux

Microsoft no admite oficialmente el software gráfico de Linux en Windows. La función Subsistema de Windows para Linux está diseñada para ejecutar programas de línea de comandos que los desarrolladores puedan necesitar. Pero en realidad es posible ejecutar programas gráficos de escritorio de Linux en Windows usando esta función.

Sin embargo, esto no funcionará de forma predeterminada. Deberá instalar un servidor X y establecer la DISPLAYvariable antes de que los programas gráficos de escritorio de Linux se ejecuten en su escritorio de Windows. Cuanto más simple sea la aplicación, es más probable que funcione bien. Cuanto más compleja sea la aplicación, es más probable que intente hacer algo que el subsistema de Windows subyacente de Microsoft para Linux aún no es compatible. Todo lo que puede hacer es intentarlo con estas instrucciones y esperar lo mejor.

Elija su entorno Linux predeterminado

Si tiene varias distribuciones de Linux instaladas, puede elegir su instalación predeterminada. Esta es la distribución utilizada cuando se inicia la distribución Linux con el basho wslmando, o cuando se utiliza el bash -co wsl los comandos para ejecutar un comando de Linux en Windows en otro lugar.

Incluso si tiene varias distribuciones de Linux instaladas, aún puede iniciarlas directamente ejecutando un comando como ubuntuo opensuse-42. El comando exacto que necesitará se detalla en la página de descarga de cada distribución de Linux en Microsoft Store.

Relacionado:  Cómo encontrar la tasa de bits de un video en Windows y macOS

Inicie rápidamente Bash desde el Explorador de archivos

No es necesario que inicie el shell de Linux desde su icono de acceso directo. Puede iniciarlo rápidamente desde el Explorador de archivos escribiendo «bash» en la barra de direcciones y presionando Enter. Aparecerá el shell Bash de su distribución de Linux predeterminada, y el directorio de trabajo actual será el directorio que tenía abierto en el Explorador de archivos.

Ese artículo también proporciona instrucciones para agregar una opción «Abrir shell Bash aquí» al Explorador de archivos editando el Registro de Windows, lo que le brinda una opción de menú contextual conveniente que funciona de manera similar a las opciones «Abrir ventana de PowerShell aquí» o «Abrir símbolo del sistema aquí» .

Cambiar su cuenta de usuario de UNIX

When you first set up Bash, you’re be prompted to create a UNIX user account and set a password. You’re be automatically signed in with this account each time you open the Bash window. If you want to change your UNIX user account—or use the root account as your default account in the shell—there’s a hidden command for changing your default user account.

Uninstall and Reinstall a Linux Environment

RELATED: How to Uninstall (or Reinstall) Windows 10’s Ubuntu Bash Shell

After you’ve installed some programs or changed some settings, you might want to reinstall Ubuntu or another Linux distribution and get a fresh Linux environment. This was previously a little complicated, but you can now do it simply by uninstalling the Linux distribution like you would any other application and then reinstalling it from the Store.

To get a fresh system without redownloading the Linux distribution, you can run the distribution’s command along with the “clean” option from a Windows Command Prompt or PowerShell console. For example, to reset Ubuntu without redownloading it, run ubuntu clean .

If you still have an older Linux environment installed—one that was installed prior to the Fall Creators Update—you can still uninstall it with the lxrun command.

Upgrade Your Ubuntu Environment

RELATED: How to Update the Windows Bash Shell to Ubuntu 16.04

After the Windows 10’s Fall Creators Update, you now have to install Ubuntu and other Linux environments from the Store. When you’ve do that, they’ll be automatically updated to the latest versions without any special commands.

However, if you created a Bash environment on an older version of Windows, you’ll have an older Ubuntu environment installed. You can just open the Store, and install the newest Ubuntu from the Windows Store to upgrade.


Enterprising geeks will no doubt figure out other interesting things you can do with the Linux environment in the future. The Windows Subsystem for Linux will hopefully continue getting more powerful, but don’t expect Microsoft to officially support graphical Linux desktop applications any time soon.