4 ms·
The script is not a proper POSIX bourne shell script, as it uses arrays. For starters, it won't work in dash (Debian and Ubuntu /bin/sh implementation). So th
by etanol 15y ago
The script is not a proper POSIX bourne shell script, as it uses arrays.
For starters, it won't work in dash (Debian and Ubuntu /bin/sh implementation). So the shebang line should be changed to #!/bin/bash (not sure if it would work in Zsh either).
- willvarfar 15y agoFork and fix please!
- imrehg 15y ago... and send a pull-request, so everyone can share the happy.
- etanol 15y agoAlready done, and someone even did a better fix: https://github.com/holman/spark/pull/8 https://github.com/holman/spark/pull/8
- kelnos 15y agoNetBSD seriously doesn't put bash in /bin? That's just broken by design.
- ketralnis 15y agoI can't speak to NetBSD, but FreeBSD doesn't put any user-installed programs in /bin or /usr/bin, they all go into /usr/local. Since bash isn't distributed as part of the base system, it goes into /usr/local/bin/bash
- kelnos 15y agoSo then how do you write cross-platform scripts? You can't even do "#!/usr/bin/env bash" since I'm assuming what you're saying means 'env' is in /usr/local/ as well, but on Linux systems it'll be in /usr/. Broken! Can we please just pick one convention and stick with it? Oh, standards... so many to choose from.
- VMG 15y agoMaybe this shouldn't be a shell script. A C implementation would be quite portable and also pretty fast.