4 ms·
You're getting downvoted to oblivion, but I'm old enough to remember not being able to take bash for granted. The default shell on some modern systems (OpenBSD
by peatmoss 11y ago
You're getting downvoted to oblivion, but I'm old enough to remember not being able to take bash for granted. The default shell on some modern systems (OpenBSD for example) comes to mind as well. I feel this battle has mostly been lost, however.
- stephenr 11y agoHN coolkids downvoting advice that makes software more portable and reliable. What a fucking shock.
- 9912891 11y agoThey use bash as a service. It's integrated in node.js 2041.4.1.
- privong 11y ago> HN coolkids downvoting advice that makes software more portable and reliable. What a fucking shock. A little more verbosity on the advice might have helped. I wouldn't have properly understood you were saying without @peatmoss's reply. So without the context, your original comment just seemed like knee-jerk bash-bashing.
- slavik81 11y agoUnless you've actually tested it with a shell other than bash, you should be marking it as bash. Otherwise it's likely it will not actually be portable between shells, and you will have made your software less reliable. I've encountered many scripts written by developers on Fedora that totally fail over when run on Ubuntu specifically due to using #!/bin/sh when they really required #!/bin/bash.
- stephenr 11y agoUnless you've tested it as a shell script you should be marking it as a recipe for a banana cream pie. I specifically said "Write clean, posix-compliant shell scripts" Do the same developers write Java code in a .cpp file and wonder why it doesn't work? Or put <?php tags in a .erb template? Yes, you need to test to make sure that you wrote the correct things.
- pavanky 11y agoDefault on debian is dash.
- lorenzhs 11y agoBut bash is installed by default if I'm not terribly mistaken, and it's classified as an essential package. If you put in a bash shebang, it should work.
- pavanky 11y agoI have seen several people use #!/bin/sh and write bash code. This is going to break on debian machines when you do ./foo If more people used #!/usr/bin/env bash, it wouldn't be that big of a deal.
- stephenr 11y agoAnd they would have non portable code. If they wrote posix compatible shell scripts it wouldn't be any big deal because they'd just work.
- marcoperaza 11y agoThere's like five comments from you in this thread and you seem very adamant about people not writing bash scripts. Have you considered that not everyone has the same requirements? Maybe they don't care about targeting systems that don't have bash installed. In that case, they can use the myriad of enhancements that bash offers to improve their productivity and happiness.
- JdeBP 11y agoAnd, this page being news about Ubuntu, one should note that this has been true for Ubuntu for fast approaching a decade, now; Debian having followed in the footsteps of Ubuntu, in this regard. * https://wiki.ubuntu.com/DashAsBinSh https://wiki.ubuntu.com/DashAsBinSh * https://wiki.ubuntu.com/DashAsBinSh/Spec https://wiki.ubuntu.com/DashAsBinSh/Spec * https://lists.debian.org/debian-release/2007/07/msg00027.html https://lists.debian.org/debian-release/2007/07/msg00027.htm...
- notatoad 11y agoEverything old is new again - distros targeted at running inside docker containers (like Alpine) are shipping without bash. Not taking bash for granted is still a good plan.