android上のシェルスクリプト解決
android上の端末エミュレータでシェルスクリプトが動かなかったのですが、
/system/bin/shを削除orリネームして/sytem/xbin/bashをリンクして解決しました。
まず、
su
で、rootを取り
mount -o rw,remount /dev/block/mtdblock3 /system
で書き込み可能でsystemをマウントし直して
mv /system/bin/sh /system/bin/_sh
でリネーム(一応名前を変えるだけで残した)
ln -s /system/xbin/bash /system/bin/sh
でリンクします。
もとの端末エミュレータの設定でシェルをshからbashにしていたのですが、どうもこれではダメでした。
もしかするとシェル変数のSHELLが/system/bin/shのままだったからかもしれません。
いずれにしろ、shの実体をbashにしなおせば大丈夫ということです。