En mi emulador de Android, la carpeta /system/bin contiene varios enlaces simbólicos que apuntan al binario de la caja de herramientas:
# ls -l /system/bin
ls -l /system/bin
[SNIP]
lrwxr-xr-x root shell 2012-08-23 07:01 ls -> toolbox
lrwxr-xr-x root shell 2012-08-23 07:01 lsmod -> toolbox
lrwxr-xr-x root shell 2012-08-23 07:01 lsof -> toolbox
[SNIP]
-rwxr-xr-x root shell 181002 2012-08-23 07:01 toolbox
[SNIP]
#
Mi entendimiento es que 'toolbox' es un binario que es capaz de hacer todo lo que ls, lsmod, lsof etc... pueden hacer, y que llamar a 'ls -l' termina llamando a 'toolbox ls -l'.
Pero lo que no entiendo es cómo funciona esto: si 'ls' es efectivamente un symlink a 'toolbox', entonces 'ls -l' se convertiría en 'toolbox -l', lo que por supuesto no funciona.
¿Qué me falta? (o dicho de otra manera: ¿qué hace que 'ls -l' se convierta en 'toolbox ls -l'?)