Hi, All
ICS has changed its default shell to mksh. and the source of mksh is under ${AOSP}/external/mksh. In ICS, mksh use /system/etc/mkshrc as the default profile if we log into android with adb shell or on the serial console. so if we want to export some environment variable like(PS1), we can change this file. and we can change the default profile file path by changing MKSHRC_PATH in Android.mk. if we don't log in, like just run "adb shell cmd", then the mkshrc will not be used.
It says that mksh is *mostly* bourne shell compatible and is also POSIX sh compatible, but I'm not familiar with mksh, so if you are interested in it, you can go to the homepage get more information. this is the home page https://www.mirbsd.org/mksh.htm.
Thanks, Yongqin Liu