Desarrollador de mksh aquí.
Desactivamos el historial persistente para mksh en Android, para no gravar la memoria flash con demasiadas peticiones de escritura.
Puedes volver a habilitarlo en una ROM personalizada configurando -DHAVE_PERSISTENT_HISTORY=1
en LOCAL_CFLAGS
en Android.mk . También puedes recompilar mksh así y copiarlo en tu ROM, si está rooteada y la versión del SO base es la misma.
Además, puede copiar cualquier binario enlazado estáticamente para la misma arquitectura en el teléfono y utilizarlo. Los binarios mksh-static del paquete de Debian, sin embargo, también excluyen el historial persistente.
Si realmente crees que esta función merece la pena, convence a Google para que la habilite; para ello, tienen que editar mkmf.sh y eliminar las siguientes líneas
# even the idea of persistent history on a phone is funny
HAVE_PERSISTENT_HISTORY=0; export HAVE_PERSISTENT_HISTORY
y luego reconstruir Android.mk a partir de ella (lo que hacen para cada nueva versión de todos modos).
Ah, y podrías pedir al desarrollador del Emulador de Terminales para Android que incluya una versión de mksh con el historial activado. Esto probablemente no es una mala idea de todos modos, ya que será más nuevo que lo que se obtiene en las ROMs de stock, y no va a sobrescribir el shell del sistema /system/bin/sh
pero que esté disponible para los usuarios de la CLI.
Todo eso aún no habilita el historial persistente por defecto (me opongo terminantemente a ello, ya que es una función de vigilancia), pero permite a los usuarios establecer $HISTFILE
para habilitarla.
0 votos
Creo que no se puede, pero no estoy 100% seguro.
0 votos
Puedes usar un proyecto que he construido, gitlab.com/rafi-gana/superadb sólo hay que instalar los requisitos y ejecutarlo.