Linux: Shells
-
Bash is coming to win 10
http://techcrunch.com/2016/03/30/be-very-afraid-hell-has-frozen-over-bash-is-coming-to-windows-10/ -
@Mogrith said in Linux: Shells:
Bash is coming to win 10
http://techcrunch.com/2016/03/30/be-very-afraid-hell-has-frozen-over-bash-is-coming-to-windows-10/We have a couple of threads on that. It sounds amazing at first, but it turns out to be totally useless and a marketing trick. It's not BASH for Windows, that already exists via Cygwin. It's BASH for a weird, useless container on top of Windows 10... for all intents and purposes in a VM. So the BASH can be used to work in its own little useless environment, but can't interact with Windows 10. So has no actual purpose, sadly. We were all very excited about it until the news came out that it was totally useless by being isolated.
If you want Ubuntu on Windows (the thing, not the product with the intentionally misleading name) you still have to fire up Hyper-V or VirtualBox and install a full VM sadly.
-
@scottalanmiller said in Linux: Shells:
@Mogrith said in Linux: Shells:
Bash is coming to win 10
http://techcrunch.com/2016/03/30/be-very-afraid-hell-has-frozen-over-bash-is-coming-to-windows-10/We have a couple of threads on that. It sounds amazing at first, but it turns out to be totally useless and a marketing trick. It's not BASH for Windows, that already exists via Cygwin. It's BASH for a weird, useless container on top of Windows 10... for all intents and purposes in a VM. So the BASH can be used to work in its own little useless environment, but can't interact with Windows 10. So has no actual purpose, sadly. We were all very excited about it until the news came out that it was totally useless by being isolated.
If you want Ubuntu on Windows (the thing, not the product with the intentionally misleading name) you still have to fire up Hyper-V or VirtualBox and install a full VM sadly.
The weird thing to me is why anyone would want a bash shell on Windows for windows. I see this shell more for you to make connections to Linux boxes to control them, less about controlling the Windows 10 machine itself. But what do I know?
-
@Dashrender said in Linux: Shells:
The weird thing to me is why anyone would want a bash shell on Windows for windows. I see this shell more for you to make connections to Linux boxes to control them, less about controlling the Windows 10 machine itself. But what do I know?
BASH has nothing to do with Linux or UNIX. It's a shell, like a programming language. Why would you want BASH on Linux but not on Windows? If you want it on Linux, why would you not want it on Windows? And BASH isn't about connections, that's SSH, BASH is the programmatic interface that you use.
People choose BASH on Linux, a platform where many choices exist, because it is common, powerful, easy and familiar. Some people use ZSH or FISH, but BASH is the big winner amongst many possibilities. We want it on Windows for the same reason... why would we want something else on Windows when we chose the "best option" on Linux?
-
@Dashrender said in Linux: Shells:
I see this shell more for you to make connections to Linux boxes to control them..
Not sure what you mean, how would BASH do that and why? You'd want "whatever shell you are using on Windows" for that, ideally.
-
And this is the failing to the uninitiated. I don't really understand what the shell does. I don't understand what makes it work differently than another one.
Just telling me that it's like two different programming languages doesn't help when I'm not a programmers. I've done a tiny, and I mean microscopic amount of programming, so I know that there are key word differences, grammar differences, etc - but I still don't understand what makes one language better than another for a specific task, and the same applies here for shells.
You even say in your explanation that one shell to another (on LInux) the normal user won't be able to tell the difference - it's not until you dig deep with programming, but I don't understand why that is?
-
@Dashrender said in Linux: Shells:
And this is the failing to the uninitiated. I don't really understand what the shell does. I don't understand what makes it work differently than another one.
Think: "Programming language with handy access to system calls."
The common shell that you know is the Windows graphical shell. You just call it the Windows desktop. That's a shell. Shells are the things that provide the user interface to the operating system.
-
@Dashrender said in Linux: Shells:
You even say in your explanation that one shell to another (on LInux) the normal user won't be able to tell the difference - it's not until you dig deep with programming, but I don't understand why that is?
For example, BASH lacks complex data types that some other shells have. But if you are not doing programming that would use them, you'd never notice. But BASH and ZSH share a syntax (they both use BASH syntax.) So anything you do in BASH works on ZSH, but somethings that you do on ZSH won't work on BASH.
ZSH also has more advanced completion. Like you can tab complete host names, for example, which BASH can't do.
-
@Dashrender said in Linux: Shells:
Just telling me that it's like two different programming languages doesn't help when I'm not a programmers. I've done a tiny, and I mean microscopic amount of programming, so I know that there are key word differences, grammar differences, etc - but I still don't understand what makes one language better than another for a specific task, and the same applies here for shells.
For example, let's think about graphical shells. Let's say that you want to work with both Windows and CentOS and you want to do so graphically... would you want each to have a unique graphical environment with a different look, feel, different mouse actions and gestures, menus in different places, etc? Or would you want to choose the best of the two and have both do the same thing so that you can move back and forth without having to change anything that you do?
-
the programming part is where I'm completely lost.
-
@Dashrender said in Linux: Shells:
the programming part is where I'm completely lost.
Then ignore that part. Think of it as "interface."
-
@Dashrender said in Linux: Shells:
And this is the failing to the uninitiated. I don't really understand what the shell does. I don't understand what makes it work differently than another one.
English and French are different. They can accomplish the same things, but they get there in different ways. Programming languages are a lot like that. Some things are easier to do in English, some things are easier to do in French. But nothing is easier than getting to speak in your own language all of the time.
-
@StrongBad Good analogy.
@Dashrender: Different shells provide you with different programming (or scripting) capabilities. For example, zsh and (k)sh differ in word splitting. Here's a good read about that: http://zsh.sourceforge.net/FAQ/zshfaq03.html#31. And here's how zsh differs from other shells at a more global scope: http://zsh.sourceforge.net/FAQ/zshfaq02.html
-
@thwr Thanks