es.phhsnews.com


es.phhsnews.com / Cómo ejecutar programas de Windows desde Bash Shell de Windows 10

Cómo ejecutar programas de Windows desde Bash Shell de Windows 10


En la Actualización de creadores, el shell Bash de Windows 10 ahora le permite ejecutar los binarios de Windows y los comandos estándar del Comando de comando, directamente desde Bash. Puede ejecutar programas Linux y Windows desde el mismo shell Bash, o incluso incorporar comandos de Windows en un script Bash.

Lo que necesita saber

RELACIONADO: Todo lo que puede hacer con el nuevo shell Bash de Windows 10

Estos son algunos detalles básicos que debe conocer sobre esta función:

  • Cuenta de usuario : los programas lanzados desde el shell Bash se ejecutarán como si hubieran sido iniciados por la cuenta de usuario actual de Windows.
  • Permisos : estos programas tendrán los mismos permisos que el proceso Bash.exe. Por lo tanto, si desea que estos comandos tengan acceso de administrador, deberá ejecutar el shell Bash como administrador.
  • Directorio de trabajo : los programas de Windows comparten el mismo "directorio de trabajo" que el shell Bash. Por lo tanto, si ejecuta un comando que enumera los contenidos del directorio actual, mostrará el contenido del directorio de trabajo actual en el shell Bash. Utilice el comandocdpara cambiar los directorios de trabajo.

Teniendo esto en cuenta, echemos un vistazo a cómo ejecutar un programa.

Cómo ejecutar un programa de Windows

RELACIONADO: Cómo acceder a los archivos Bash de Ubuntu en Windows (y a la unidad del sistema de Windows en Bash)

Para ejecutar un programa de Windows, ingrese la ruta al archivo .exe del programa en el shell Bash. Recuerde que su unidad Windows C: está disponible en / mnt / c en Bash. El entorno Bash también distingue entre mayúsculas y minúsculas, por lo que debe especificar las mayúsculas y minúsculas correctas.

Supongamos que desea iniciar la utilidad Ping ubicada en C: Windows System32 PING.EXE. Ejecutaría el siguiente comando:

/mnt/c/Windows/System32/PING.EXE

El siguiente comando no funcionaría, porque Bash distingue entre mayúsculas y minúsculas:

/ mnt / c / windows /system32/ping.exe

Esto es un poco más complicado si la ruta contiene caracteres complejos como espacios y corchetes, como las carpetas de Archivos de programa. Tiene que "escapar" espacios, corchetes y otros caracteres complejos prefijándolos con un carácter "".

Por ejemplo, supongamos que desea ejecutar el programa Internet Explorer ubicado en C: Archivos de programa (x86) Internet Explorer iexplore.exe. Tendría que ejecutar el siguiente comando en Bash:

/ mnt / c / Program  Files   (x86 ) / Internet  Explorer / iexplore.exe

Tenga en cuenta la "" antes del espacio y el corchete caracteres. Estos caracteres deben ser "escapados" o Bash no se dará cuenta de que los caracteres son parte de una ruta de archivo.

Cómo pasar un argumento a un comando

El shell Bash pasa los argumentos directamente a los comandos que ejecuta.

Por ejemplo, si quisiera hacer ping a example.com, ejecutaría:

/mnt/c/Windows/System32/PING.EXE example.com

O, si desea abrir el archivo de hosts de Windows en el Bloc de notas, se ejecutaba:

/mnt/c/Windows/System32/notepad.exe "C:  Windows  System32  drivers  etc  hosts"

Se usa la ruta de archivo estándar de Windows al pasar un ruta de archivo directamente a un programa de Windows. Eso es porque Bash pasa el argumento directamente. Notepad.exe y otros programas de Windows esperan una ruta de archivo de Windows.

Cómo ejecutar un comando incorporado

Algunos comandos de Windows no son archivos .exe, sino que están integrados en el símbolo del sistema. Por ejemplo, esto incluye el comandodirque normalmente podría ejecutar en un símbolo del sistema. Para ejecutar un comando de este tipo, debe ejecutar elcmd.exebinario asociado con el Símbolo del sistema y pasarlo como un argumento con / C, como sigue:

/ mnt / c / Windows /System32/cmd.exe / Comando C

Por ejemplo, para ejecutar el comandodirintegrado en el símbolo del sistema, ejecutaría el siguiente comando:

/ mnt / c / Windows / System32 / cmd.exe / C dir

Cómo agregar directorios a la ruta de acceso

El entorno Servicios de Windows para Linux trata los ejecutables de Windows de forma similar a los binarios de Linux. Esto significa que puede agregar un directorio que contenga archivos .exe a la ruta y luego ejecutar esos archivos .exe directamente. Por ejemplo, para agregar el directorio de System32 a su ruta, ejecutaría:

export PATH = $ PATH: / mnt / c / Windows / System32

A continuación, puede ejecutar archivos Windows .exe ubicados en la carpeta System32 directamente, de la siguiente manera:

PING.exe ejemplo.com
notepad.exe
cmd.exe / C dir

Cómo canalizar la salida de un comando a otro

La salida de un comando de Windows se puede canalizar a un comando de Linux, y viceversa. Por ejemplo, puede usar el comandoipconfig.exe -allpara enumerar detalles sobre sus interfaces de red y canalizarlo al comando Linuxgreppara buscar el resultado. Por ejemplo, para mostrar toda la información sobre su conexión y buscar secciones que coincidan con "Dirección IPv4", ejecutaría:

/mnt/c/Windows/System32/ipconfig.exe -all | grep "Dirección IPv4"

Ese es el proceso básico. Estos comandos también funcionarán cuando se incorporen a un script de Bash, para que pueda escribir un script de Bash que incorpore los comandos de Windows y las utilidades de Linux. Si se ejecuta en el shell Bash, funcionará en un script Bash.

Y, si quiere ir en dirección opuesta, puede usar el comando "bash -c" para ejecutar los comandos Bash desde el símbolo del sistema estándar de Windows. .


Cómo crear perfiles separados de Netflix para sugerencias más precisas

Cómo crear perfiles separados de Netflix para sugerencias más precisas

Netflix recomienda contenido basado en lo que ha visto, pero si cree que todos en su hogar son la misma persona, entonces sus recomendaciones serán terrible. Aquí se explica cómo mejorar las recomendaciones para todos los usuarios con perfiles de usuario. RELACIONADO: Cómo configurar controles parentales en Netflix La configuración de múltiples perfiles de usuario beneficia a todos.

(how-top)

Cómo deshabilitar enlaces de sitios web al pegar texto en OneNote

Cómo deshabilitar enlaces de sitios web al pegar texto en OneNote

Cuando pega texto de una página web en OneNote, no solo pega el texto. También obtendrá un enlace a la página web desde la que lo obtuvo. Puede desactivar esta característica si lo desea, forzando a OneNote a pegar solo el texto que realmente copió. OneNote versus OneNote 2016. Desafortunadamente, solo puede desactivar esta función en la versión de escritorio clásica de OneNote, llamada "OneNote".

(how-top)