Originally Posted by ixtab
Wooohoooo! Merci beaucoup, Monsieur geekmaster
Unfortunately, my idea of using /usr/local/bin/find didn't work (I tried it, but it seems like the built-in busybox commands are preferred over $PATH), and neither did cscat's proposal
So... any other ideas?
I had that problem with busybox. I was not able to use a fully-qualified path, so I launched my app inside a new shell (different busybox) that did not have the command that I needed built-in, so it used the one on the search path.
For example, when booted to main, to start a shell using the diags busybox, do:
mount /dev/mmcblk0p2 /mnt/mmc
Of course, that was only useful on the K4, which has very different Busyboxes on main and diags, but on the touch they were identical, when I checked. But don't let that stop you. You can use a custom busybox.
The new shell inherits your PATH, but if you now use a command that is not in the diags busybox but which is in and would be intercepted by main busybox, you are good to go, and the command on the search path now runs instead of the stripped busybox version that is missing options you need...
Anyway, that is how *I* solved a problem similar to the one you described... *
Of course, you probably want to start a shell in a DIFFERENT busybox that is in /mnt/us/bin, right?
SUMMARY: To break out of the Busybox "sandbox" for its built-in commands, start a child shell from a different Busybox that does not have your chosen command built-in, or at least has a more-capable built-in that does what you need.
P.S. Busybox commands do not need symlinks. You can just stick "busybox" in front of busybox built-in commands (like "busybox sh").