3 ms·
As far as I can tell, there is no busybox bash. busybox's built-in shell is ash. There are options to enable a few bash-compatible extensions, but there is no
by _kst_ 3y ago
As far as I can tell, there is no busybox bash.
busybox's built-in shell is ash. There are options to enable a few bash-compatible extensions, but there is no "bash" applet.
- chasil 3y agoTry the Windows version on frippery.org. I see it in the screen capture. https://frippery.org/busybox/index.html https://frippery.org/busybox/index.html
- arp242 3y agoThere's an option to install the "bash" applet as a link to either ash or hush, the two shells that busybox comes with. Turns out that a large number of "bash scripts" use no bash-specific features in spite of using "bash" in the #!, or only a few bash-specific features like [[ ]]. It's disabled by default, and arguably not a good idea to enable it because compatibility is not great as you found out. Either way, "busybox bash" doesn't exist: only the option to alias ash or hush to bash.
- chasil 3y agoA major one that I use is: ${var//findpattern/replace} It turns out that busybox equates [[ to [ in the source, sidestepping the differences.
- stevenhuang 3y agothat bash you see is actually a symlink to ash
- chasil 3y agoDid you download the busybox64.exe binary and execute it? I'm confident that it is presented. I use this to spray SQL to dozens of databases.
- _kst_ 3y agoThe bash you're seeing is a symlink to busybox, as are all busybox applets. You can configure busybox to install an applet named "bash", but it's not a full bash shell. It's basically busybox ash, with maybe a few bash-specific extensions implemented. For example, it doesn't support arrays; `arr=(10 20)` will give you a syntax error. In a default configuration, there is no "bash" applet. You can optionally configure busybox to alias "bash" to either "ash" or "hush" (and likewise for "sh"). This allows the use of "#!/bin/bash" scripts, but only if they don't use bash-specific features not supported by busybox.