You get admin privileges on MacOS like a big boy. You can use bash or zsh commands in Terminal all you want.
Cool. So try updating to a version of Bash from the last 15 years, because the pre-installed one is Bash 3, because Bash 4 and 5 are under the GPLv3 license, which Apple won’t comply with.
…ah, no, you can’t update the pre-installed Bash, because it’s on a section of the file system that is read-only even with admin access. You can install Bash 5 as a separate shell, and use that as your default terminal shell, but any scripts written with the standard #!/bin/bash instead of the more flexible #!/usr/bin/env bash will still use Bash 3.
This “handholding” (or really, a safety net) is arguably a good thing, or at least a positive tradeoff; but you can’t claim it doesn’t exist.
It’s not so much a problem of there being things you “can’t do” in other shells or older Bash, as that it breaks existing shell scripts, which is frustrating.
I get that this is an Apples to Oranges comparison, but Powershell 7 is way easier to use than the default Windows Powershell because of autocomplete. I imagine that newer versions of Bash have made improvements that are similarly powerful.
Ok, yeah, I can see that there would be times this could matter but like 90% of the time this wouldn’t have mattered for my use case afaik. I didn’t realize you couldn’t backup the old copy in /bin and symlink to the brew one from there. In fact I thought I did do that long ago.
Cool. So try updating to a version of Bash from the last 15 years, because the pre-installed one is Bash 3, because Bash 4 and 5 are under the GPLv3 license, which Apple won’t comply with.
…ah, no, you can’t update the pre-installed Bash, because it’s on a section of the file system that is read-only even with admin access. You can install Bash 5 as a separate shell, and use that as your default terminal shell, but any scripts written with the standard
#!/bin/bash
instead of the more flexible#!/usr/bin/env bash
will still use Bash 3.This “handholding” (or really, a safety net) is arguably a good thing, or at least a positive tradeoff; but you can’t claim it doesn’t exist.
I agree it’s not as limitless as Linux, but there’s plenty of room for advanced users.
I’ve never needed to use a newer version of Bash. What is an example of something one couldn’t do with Bash 3 or zsh?
It’s not so much a problem of there being things you “can’t do” in other shells or older Bash, as that it breaks existing shell scripts, which is frustrating.
I get that this is an Apples to Oranges comparison, but Powershell 7 is way easier to use than the default Windows Powershell because of autocomplete. I imagine that newer versions of Bash have made improvements that are similarly powerful.
I’m not sure what you mean. I have updated bash with a single homebrew command.
The poster you’re replying to was not referring to 3rd party software in user space.
Ok, yeah, I can see that there would be times this could matter but like 90% of the time this wouldn’t have mattered for my use case afaik. I didn’t realize you couldn’t backup the old copy in /bin and symlink to the brew one from there. In fact I thought I did do that long ago.