Publicado hace 6 años por --513049-- a blogs.msdn.microsoft.com

La característica de Windows que permite ejecutar comandos de Linux y llamar a procesos de Windows desde una terminal Linux en Windows abandonará definitivamente la beta con la actualización de otoño de Windows 10.

Comentarios

D

#2 Se llama Power Shell

alexwing

#13 eso, no me salía el nombre. El otro día hice un script con el, hacia un post en una web, está generaba un fichero y luego yo lo descargaba y dejaba en una carpeta específica del equipo. Todo usando el componente de .net.

d

#16 que algo se soporte en Unix no lo hace portable, y que este hecho en .net no lo hace menos portable.

Powershell es open source. Hay version para Linux corriendo sobre mono. (En Alpha, pero es no es un problema de portabilidad, sino de la comunidad)

D

#26 ¿ me doces que no hay maneras portables de hacer un http POST y que en cambio la powershell sí es portable ? ¿ en serio ? ¿ o te estoy interpretando mal ?

d

#29 no se donde he dicho yo que no haya maneras portables de hacer un POST, lo que he dicho es que el hecho de que algo corra en linux no lo hace portable, y el hecho de que algo esté hecho en .net no lo hace no portable. De hecho al ser powershell open source y haber frameworks .net para distintas plataformas, es probablemente más portable que bash.

Pero ya nos dirás que entiendes tu por portable, que no te veo muy fino.

D

#16 PowerShell y .Net son multiplataforma y también portables. El mismo script funciona en Win, Linux o IOs sin modificaciones.

https://github.com/PowerShell/PowerShell

Además, al poder usar el API de .Net y los cientos de miles de command lets disponibles, es infinitamente más potente que una consola corriente. Y para rematar, hay muchos comandos bash que funcionan en PowerShell, como ls,who,find y un largo etcétera.

Cc/ 14 #19

D

#28 por aquí dicen que está en estado alfa.

D

#30 Se anunció a principios de 2016, por lo que es muy posible que en breve haya una versión estable.
En Win de más está decir que es estable hace mucho tiempo, los ports son los que aún necesitan madurar un poco.

LaInsistencia

#31 "es muy posible que en breve haya una versión estable" = "todavia no hay una versión estable"

D

#76 Y? La mayoría de funciones ya están. Cuál es el problema? De hecho Microsoft ya lo utiliza como backend en Azure para la administración de las máquinas virtuales y se ahorran el tener scripts diferentes para cada plataforma.
A algunos parece que os diera rabia que hayan productos útiles de Microsoft que funcionen en Linux, en vez de alegraros porque aumente el arsenal de herramientas disponibles...

LaInsistencia

#79 Microsoft lo ha metido en Azure porque quedaría muy mal que no se hiciesen su propia comida para perro. Pero vamos, que rabia ninguna... me dió en su día que me obligasen a aprender productos de terceros porque no les entrase en la cabeza que no todo el mundo considera productivo hacer clicks manualmente en iconos. A estas alturas ya me da un poco igual, la verdad... pero que aun no es estable, que no intentes colar como algo super probado cuando en la misma frase dices que "en breve estará la versión estable"... versión estable definitiva super testeada por los que han tenido que tirar de la versión beta porque es lo que viene en Azure.

D

#82 "Microsoft lo ha metido en Azure porque quedaría muy mal que no se hiciesen su propia comida para perro.."
Cuanto dolor... Ni que Bill Gates hubiese violado a tu perro...

thingoldedoriath

#92 No sabía que hubiese un término tan descriptivo para ese tipo de situaciones!!

c

#28 ejem. .NET solo es "portable" hasta donde llegue mono, y usar PoweShell en Linux (salvo obligación en casos muy especificos) es estúpido.

D

#45 No. Actualizate
.Net Core, que no Mono, corre nativamente sobre Linux. Y SQL Server también. Y Visual Studio Code, de los mejores IDE's, también. Hace mucho que Microsoft abrazó Linux en vez de pelear con él. De hecho es uno de los contribuyentes más activos entre los desarrolladores del kernel.

https://www.microsoft.com/net/download/linux

https://www.microsoft.com/en-us/sql-server/sql-server-2017

https://code.visualstudio.com/download

c

#56 "Actualízate tú". Ese engendro no es Linux.

.NetCore no corre nativamente en ningun Linux, y menos SQL Server.
Ponlo a funcionar en un RHEL... o en un Debian GNU/Linux.


Upps.

D

#57

d

#56 te juro que no entiendo las inseguridades que les salen a esta gente cada vez que microsoft hace algo decente. Microsoft tiene un subsistema unix en windows desde 1999, no es nada nuevo, que parece que les estuvieran robando. No se aparte porqué les molesta la potencia powershell para la gente que se maneje en .net (no es mi caso, yo solo he visto consolas fosforitas)

Mariele

#45 sí, hacen falta ganas para usar estas historias en Linux lol

D

#28 Vamos... que es un lenguaje de script interpretado con una maquina virtual de ejecución?

D

#14 hace chorrocientos de miled e años que se puede hacer eso con bash... lo mejor de todo es tener programas orientados a consola, cuando controles un scanner automatizado por script, hablamos

d

#19 he encontrado al hacker

c

#14 wget, curl.... Sin mierdas .NET para esas chorradas

alexwing

#46 si lo se, he puesto solo un ejemplo que necesitaba para un cliente, con .net hay librerías para todo, cualquiera que las haya usado sabe las posibilidades que tiene.

d

#46 ya nos dirás porqué .net es una mierda, y cómo de portable es wget o curl

Oniros

#46 Soy Analista Programador Senior en .Net... Me ofendes gravemente esas dos mierdas no valen para nada en comparación con .Net. A sí como son de software libre ya son mejor y todo eso... El software propietario suele ser mejor en general porque hay miles de personas (de los mejores en muchos casos) que han desarrollado dicho software. Java y .Net son las plataformas principales de desarrollo general con una cantidad de librerías que rallan el absurdo. Java es bueno para algunas cosas y .Net para otras (soy desarrollador también de java) Pero no me los compares con esas dos chorradas chaval insensato.

p

#2 En el escritorio ya está desde hace años.

D

#2 Revisa tu concepto de "nuevo", porque una cosa que lleva 10 años a pleno rendimiento como que no encaja mucho...

alexwing

#96 bueno nuevo para mi, ¿Antes de Windows 10 venía integrado?

D

#97 Sí, viene integrado por defecto desde Windows 7 / Windows 2008 (coincidiendo con la versión 2.0). Ha llovido desde entonces, la verdad.

alexwing

#100 pues no tenía ni idea, pensaba qué era algo nuevo en Windows 10, tampoco suelo tener necesidad de hacer scripts a menudo.

t

#25 sí.. No uso el nombre completo de mi hija para dirigirme a ella, así que imaginate lo que me preocupa ponerme pejiguero con el nombre de un sistema operativo.

c

#36 Llamas a tu hija con el nombre de tu abuela?

t

#50 , has ido a buscar un ejemplo muy malo que no me aclara que quieres decir. Supongo que sabes que muchas familias por tradición usan el mismo nombre para varias generaciones (no la mía).

t

#80 , si eso te conviene a ti y a los que hablen contigo, adelante, lo que te plazca. De hecho la mayor parte de la gente dice que usa "Windows" y no te dice que versión. Es lo mismo que propones. Si usas Microsoft es más proclive a error porque mucha gente asocia la palabra a las herramientas de ofimática. Pero oye lo que más te guste. Pero no te sorprenda si tienes malos entendidos. Por otro lado estoy seguro que nunca has mal entendido a alguien que te ha hablado de Linux asociado al SO completo y no solo al kernel.

Quizás te sorprenda pero alguna gente entre la que me incluyo usamos la comunicación verbal además de la escrita. Decir GNU/Linux es un coñazo. Es mas, me apuesto algo que cuando TU hablas tampoco lo haces.

En cualquier caso, tanto tú como #50 o cualquier otro podéis llamar a Linux como queráis: GNU/Linux, GNU/Linux/kde, GNU/Linux/KDE/PulseAudio ..... . O cualquier otra combinación de lo que acaba siendo el sistema operativo...(Es un poco injusto centrarse solo en GNU no?...habrá que reconocer a todos. Edito: #44) . Yo seguiré llamándole de la misma manera que lo he hecho las últimas decadas. Sin acritud, de verdad. Esta siempre me ha parecido un discusión absurda.

c

#99 Lo que es triste es estar utilizando Windows y pensar que utilizas Linux...

LaInsistencia

#23 #36 Vale, a partir de ahora vamos a llamar Microsoft a cualquier sabor de Microsoft Windows. ¿Vista? ¿Millenium? ¿10? Da igual, vamos a llamar a todos Microsoft. Total, para que vamos a ponernos pejigueros con el nombre del sistema operativo, no es algo que marque una diferencia brutal entre uno y otro. Android y Ubuntu llevan kernels parecidos, solo cambian las opciones de compilación, llamemosle Linux también a los Android.

(Cuatro. Son cuatro pulsaciones de teclas más y se las puedes enseñar al autocorrector. ¡Vagos!)

M

#80 Tu comparación no es muy acertada, nadie llama "Canonical" a Ubuntu ni a ningún linux,

En todo caso sería como llamar "Windows" a "Windows Vista". En vez de decir "GNU/Linux" pues decimos "Linux", entonces, en vez de decir "Windows Vista" decimos "Windows".

Por tanto, por mi perfecto, puedes llamar Windows a Windows Vista sin problemas, luego cuando se necesite especificar más, pues especificas más y añades "Vista".

Trigonometrico

#80 Y sería más apropiado decir yo uso el sistema operativo Microsoft, que decir sólo Linux.

snd

#36 Es como si llamaras "coche" al "espejo del coche".

Espejos puede haber en coches, en bicicletas, motocicletas, en tu casa, en los cuartos de baños de cualquier negocio, etc.

De igual forma, GNU (que es de lo que se trata la noticia) también existe en Hurd, Unix, y otros núcleos para dispositivos empotrados. Por lo tanto, de elegir una palabra debería ser GNU y no Linux.

d

#25 hoy en día lo correcto sería decir GNU/Linux/systemd

m

#44: GNU/Linux/systemd/De todos los santos.

Oniros

#44 Tú y todos los pejigueras que obligan a los demás a denominar a Linux (como se ha llamado toda la puta vida) GNU/Linux son gilipollas de nacimiento. Siempre se ha denominado Linux o indicando la distribución que tienes instalada y me he movido por círculos de linuxeros y ninguno decía GNU/Linux...

c

#23 NO, porque no lo es. En realidad casi todo de lo que se habla es GNU.

Ahora, que por mi puedes llamar Linux a BSD, Hurd o AIX, me la sopla.

E

#23 "Me gusta la tarta de chocolate sin chocolate y con manzana" ¿Por abreviar lo dejamos en tarta de chocolate?
Precisamente lo que hace el subsystem este es suplantar Linux. Linux es lo único que no estás ejecutando cuando usas el "Windows subsystem for Linux" (nombre mal escogido, ya dicen por abajo que es justo lo contrario).

Pero nada, sigamos llamando Turmix a la batidora, especialmente en contextos técnicos y noticias específicas. Nos irá bien así y denotará conocimiento de la materia. ¿Te imaginas los titulares? "LG fabrica una nueva Turmix que consume el 50%", "Científicos descubren que es mejor usar una Turmix sin motor para ejercitar el brazo".

O a lo mejor es que no entiendes lo que están diciendo cuando te dicen que no se llama Linux y por eso te parecen pesados los que sí lo entienden.

Curiosamente la noticia habla de ejecutar toda una distribución sin la parte única que quieres nombrar.

D

Qué es un "comando de linux" y qué es una "terminal linux" ?

D

#3. No se chico, para mi si no tiene icono para hacer doble clic no existe.

c

#3 La verdad, ni puta idea.

D

#3 Un emulador de terminal que forma parte de una distribución LInux.
Realmente algunos de ustedes necesitan conseguirse una novia

musg0

Una tontería. Ya que se ejecuta en Windows y emula un Linux ¿No debería llamarse Linux subsystem for Windows?

c

#43 Claro, pero se ve que les mola más así, para que parezca que estás "usando Linux"

oldfox

Esto no se llamaba cygwin?

Jakeukalane

#34 no. Eso es un entorno POSIX portado a Windows si no me equivoco. Esto es directamente el kernel Linux funcionando.

c

#41 Esto es directamente el kernel Linux funcionando.
De eso nada, salvo que me haya perdido algo y use viertualización.
Es más como un cygwin integrado en el Kernel Windows.

Jakeukalane

#53 tienes razón. Me confundió la parte donde se descarga una imagen de Ubuntu: https://en.m.wikipedia.org/wiki/Windows_Subsystem_for_Linux

#34 cc

c

#34 Es básicamente lo mismo pero integrado en Windows.

m

#51: O sea, sería una especie de "cyglin". ¿no?

E

#34 Cygwin sirve para compilar y ejecutar código que usa librerías especificas de GNU y que funcione en windows. Es decir, crear un .exe con código de herramientas que se programaron para GNU/Unix.
El subsistema este lo que hace es que el kernel de Windows sea capaz de ejecutar binarios compilados para Linux.

Es más como Wine, pero en la dirección opuesta.

Oniros

#91 Perdón... Cygwin y Mingw son compiladores de C/C++ no digáis tonterías que he programado para windows en C/C++. Que para programar para el SO Linux se use C/C++ no implica que sea una herramienta de ellos. Es un lenguaje de programación más que se usa en varios SO entre ellos Linux y Windows. Tonterías aparte el compilador GCC es el de linux. (habrá otros pero ese es el que conozco) Esta herramienta de la que se habla lo único que veo es un emulador de terminal de linux. Si me ejecuta comando linux (adaptando la forma de trabajar a linux) y me ejecuta ShellScript vamos... es una herramientaza más que Windows se a agenciado.

Jakeukalane

¿Para cuando sistema grafico? Ya que Microsoft con UEFI me impide instalar Ubuntu en un ordenador quizás con esto pueda usarlo. Quiero instalar me cosas como deepmind y pix2pix...

D

#42 ¿¿??
Supuestamente se tendría que poder? ¿Probaste creando el pendrive de instalación con Rufus? https://rufus.akeo.ie/?locale

Jakeukalane

#54 #52 tenia que haber puesto el tiempo en pasado. Cuando lo intenté no pude. No se como estará ahora, se supone que ya se puede pero las ultimas de ubuntu ya no me caben en los usbs que tengo por casa. Además no es mi ordenador.

#54 ¿porque son mierdas las redes neuronales? Programas así de avanzados solo los desarrollan para unix o unix-like.

Se me olvido mencionar evolvotron y Titan pero esos ya los puedo usar en mi Ubuntu viejito.

Jakeukalane

#52 gracias. Con universal no me funciona ni en mi ordenador sin UEFI.

c

#42 Joder, menuda mierda quieres,...

Por cierto, de momento UEFi no impide instalar nada en la mayoria de los casos.

Aokromes

#42 teoricamente ubuntu si se puede instalar con UEFI activo.

https://help.ubuntu.com/community/UEFI

D

sudo apt get install winrar

c

#15 lol lol

D

#22 En realidad de un terminal bash de Ubuntu u OpenSuse, no sé si Fedora o RedHat están implementados

c

#72 Los comandosmde git, son de git. Si no los instalas, no los tienes.

La tontería es usar productos fuera de su mejor entorno por capricho. Para usar git, lo mejor es un entorno amigable con git.

Qué tiene de malo usar una consola de PowerShell en lugar de una de bash?

En Windows es lo mejor, salvo las posibles utilidades GNU que te proporcione en las que PS no tenga alternativa...

Usar .NET u SQL Server en Linux es un despropósito. Lo mismo que esta "migracion de linux a windows...". Es basicamente estupido.

Me da que todo esto simplemente es parte de la lucha de Microsoft en el Cloud. Espero que la gente no sea tan ignorante como para atarse a .NET y SQLServer en Linux...

LaInsistencia

#74 "Para usar git, lo mejor es un entorno amigable con git"

A menos que quieras simplemente tirar de "full_deploy_push_to_repo_and_restart_server.sh" para hacer siete operaciones seguidas mientras te coges un café. Lo investigas un poco, te picas un script y para la segunda/tercera/n-sima vez ya lo tienes. Tiempo invertido facilmente recuperado...

Que ojo, ya lo tienen en Microsoft. Les ha costado entender que es una feature deseada para acabar sacando Powershell, pero al final entraron por el aro e hicieron algo medio decente. Lo que si que veo que tiene de malo es que dependa tanto de .net, pero es su producto y lo tienen que vender. Es como si para hacer scripts de shell de bash tuvieses que depender de python por narices.

c

#68 Yo prefiero una VM mil veces. Claro que el sistema de virtulizacion de Windows es incómodo de cojones, si lo tienes...

Jf7

sudo su rm -rf /

c

#32 lol lol

Aokromes

#32 va a fallar de todas todas, por muchos su o sudo que le meta. (o lleva años sin usar linux)

astrapotro

No lo he probado, pero no lo quiero ni regalado. Prefiero lo nativo, probé el cgwin y para hacer la gracia está bien pero, no sé, si kieres gnu utiliza gnu de verdad no mierdas emuladas en un sistema privativo

Jakeukalane

#24 es "nativo", no se está emulando. Pero creo entender lo que dices.

D

#24 lo uso a diario y me ha hecho la vida más fácil. En entornos profesionales, cuesta mucho convencer a los IT para instalar algo no-M$. Es más práctico que una vm, y mucho más rápido, puesto que no tiene que iniciar la vm ni reservar memoria. Un 10.

Suena raro decirlo, siendo un debianista, pero mi distro es Win10.

Aokromes

#24 a un amigo debianita (tan debianita que tiene email@debian.org) le gusta, mira tu.

diskover

Esto me pone muy cachondo

D

#65 e ni que?

c

#22 Eso no es Linux.

orangutan

#37 GNL is not Linux

c

Comandos de Linux? En serio?

Como cual?

Pipepito

#5 como comandos de git por ejemplo.

Pipepito

#8 Linux no tiene comando de git, BASH tiene comandos de git, perdón. O estoy yo loco y no los lleva ya integrados.

Pero git en bash es bastante más directo de usar que por ejemplo en windows, donde tienes que abrir primero la consola de git y luego volver a la localización dónde estés y tal y cual.

En mi curro estan esperando esto básicamente para usar el git directamente y no tener que tirar de powershell ni hostias (son muy fans de usar git por consola), no parece un gran avance, pero lo es.

Ahora que windows adopte ext4 y ya todos contentos.

E

#72 Si lo que dices es cierto, en tu curro no tienen ni idea de lo que hacen. Y me asusta porque si usan git posiblemente por profesión deberían saber cosas básicas como las que voy a ponerte. Voy a decantarme porque tus compañeros de trabajo no estarían de acuerdo con lo que has puesto.

Git es un ejecutable como cualquier otro, bash es un ejecutable más también, distinto y con nada que ver.

Puedes ejecutar git desde cmd.exe (ya ni digo powershell), siempre que esté en el PATH el ejecutable de git, como cualquier otro ejecutable. El PATH del sistema lo puedes editar fácilmente, pero también puedes copiar el ejecutable y sus librerías en alguna carpeta que ya esté incluida.
https://es.wikipedia.org/wiki/PATH_(inform%C3%A1tica)

Lo que llamas "consola de git" es una versión de Cygwin personalizada por el equipo de git.

Cygwin incluye un ejecutable de consola que al arrancar edita su PATH para añadir una carpeta donde el propio Cygwin ha instalado las utilidades de linux que le hayas pedido (bash, ls, git, vi...), por eso desde él puedes ejecutar git y desde powershell no, si quieres usar powershell solo tienes que comprobar el PATH que usa cygwin y hacer que sea el del sistema.

No veo ningún avance ni nada nuevo que haya que esperar en el uso de git desde Windows.

Comandos integrados de bash, solo lo que es imprescindible integrar como es lógico ("cada programa tiene que hacer una única cosa, y hacerla bien", es filosofía unix):
https://www.gnu.org/software/bash/manual/html_node/Shell-Builtin-Commands.html

Pipepito

#81 Pues en realidad, esperaba que fuera como el bash en linux, que abres la consola, te vas al directorio y ala, a ejecutar comandos.

Ahora mismo o haces la de abrir consola git aquí (con la interfaz de windows) o te vas a la ruta, abres el exe etc... claro.

Igual esperaba yo algo más integrado, a mi me la pela, usamos windows, usamos git, programamos .net, Visual Studio tiene un Team Explorer precioso, peeeeeero, siempre hay enamorados de la consola, no se, pues aquí estoy, corregido pues x'D

E

#85 Me extraña que no haya la opción al instalar git para windows (claro, si lo instalas a través de Visual Studio pues no ves el instalador propio de cygwin/git).

Por la opción me refiero a un check que haga lo siguiente:
Es tan sencillo como irse a configuración avanzada del sistema->variables y allí añadir a la variable PATH la ruta donde esté el ejecutable de git.

Desde entonces será tan sencillo como abrir la terminal que prefieras, ir al directorio y ejecutar git.

Pipepito

#90 seguramente se pueda hacer manualmente, pero...pfff pereza máxima tocar eso.

Pero si vas a usar git, creo recordar que visual studio instala el cliente cygwin que comentas, hace uso de éste por detrás.

c

#85 El bash demlinux es mucho más restrictivo en eso wue el shell de windows: solo ejecuta lo que está en PATH. Todos los novatos caen cuando intentan ejecutar algo en su propio home.

D

#5 sudo apt install

D

#10 Consígueme más espacio para la entradilla y lo pongo.

orangutan

#10 Que yo sepa, de lo que está hablando la noticia es de un terminal bash de Ubuntu (derivado de debian) precisamente.

D

#10 cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.8.0-52

c

#64 y?

snd

#5 Supongo que se referirá a todo el ecosistema de GNU/Linux, especificamente, GNU a secas, pues no creo que el kernel tenga mucho que ver aquí.

Para la edición de ficheros y demás, por ejemplo awk o sed, head, tails, etc

Para moverse entre ficheros, el find, ls, etc

Todo el tema de tuberías y redirecciones ( |, &&, >>)

Supongo que no funcionará o lo hará de forma distinta el mount, el ps, chmod, etc.

c

#17 ah!

orangutan

#5 cd, rmdir, mkdir...

c

#21 Son comandos de PowerShell y Shell Windows (antiguo DOS). Siempre se pudieron usar.

orangutan

#38 Evidentemente

LaInsistencia

#38 No señor, se llaman igual, pero no son lo mismo... ejemplo tonto:

mkdir -p /home//

Esa sola linea te genera una copia del comando mkdir para cada uno de esos 7 usuarios y cada uno de esos 6 directorios. 42 operaciones de creación de directorio en 2 niveles en un solo comando. ¿El mkdir de windows? Juraría que no, que a ese le tienes que hacer el bucle por fuera... y como esa, muchas.

NapalMe

Bah... prefiero fuzix.

AlbertoPiO

Sigo prefiriendo cygwin, se integra mejor y a mi gusto funciona mejor.

tatachan

No entiendo cual es la ventaja si sigue siendo un windows.
Un interface gráfco para ususarios de windows que se pasan a linux, lo entendería pero no al revés. Si ya has aprendido lo difícil que es hacerte al terminal, repositorios,etc, por qué te pasas a las limitaciones de windows?

Si un usuario de linux sabe usar el prompt, para qué usar windows? Se queda en gnu-linux con todas sus ventajas.

Jakeukalane

#69 se me ocurre que haya maquinas que no puedes tocar o instalar Linux totalmente. No se.

tatachan

#89 para eso están las máquinas virtuales, no?
O a lo mejor para auditorias de windows con comandos de Linux? aunque para eso están los live-usb...
No sé...al que le guste o encuentre utilidad pos vale. A lo mejor permitir un uso mas profundo de windows desde el prompt para linuxeros? Puede...

D

Jajajajajaja de los comentarios sólo hay un par o tres de personas que saben de que ablan el resto de ustedes oie campanas y no sabe ni donde suenan jajajaja

D

#61 Pues tu gran aportación, a parte de las faltas de ortografía, no ha ayudado mucho, "jajajajaja"

Jakeukalane

#63 es un troll.

1 2