Androidのシェルをbashに変更 [Android]
dynabookAZをいじるにあたり、コマンドラインを扱う機会があったりするのですが、標準ではシェルがshということもあり、非常に使いにくいものとなっています。
最近はbashが標準的?なこともあり、コマンドの補完なども出来ないと、結構不便だったりします。
なんとかbashを使えないものかと調べてみたところ、android用のbashが公開されていましたので、早速導入してみました。
導入手順ですが、まず以下からbashのバイナリをダウンロードします。
xda-developers shell bash for android
ダウンロードしたファイルを以下の手順でコピーして、設定を変更します。
これで、標準のシェルがbashになります。
それと、必須ではありませんが、以下の内容を /sdcard 配下に bash_profile というファイルで保存しておくことで、カラー表示に対応してくれます。
※私は背景を端末エミュレータの設定で黒に変更しています。
なお、私はファイルをPC上で作成してからコピーしました。
その際、文字コードをUTF-8、改行コードをLFで保存しました。
SJISとCR+LFの組み合わせだと、エラーが出てしまったので。(それが原因かはわかりませんが)
端末エミュレータ(というかsh)の使いにくさには閉口していたのですが、これでかなり使いやすくなりました。
最近はbashが標準的?なこともあり、コマンドの補完なども出来ないと、結構不便だったりします。
なんとかbashを使えないものかと調べてみたところ、android用のbashが公開されていましたので、早速導入してみました。
導入手順ですが、まず以下からbashのバイナリをダウンロードします。
xda-developers shell bash for android
ダウンロードしたファイルを以下の手順でコピーして、設定を変更します。
$ su
# mount -o remount,rw /system
# cp <コピー元パス>/bash /system/bin
# cd /system/bin
# chmod 755 bash
# mv sh sh0
# ln -s bash sh
これで、標準のシェルがbashになります。
それと、必須ではありませんが、以下の内容を /sdcard 配下に bash_profile というファイルで保存しておくことで、カラー表示に対応してくれます。
PATH=/sbin:/system/xbin:/system/bin
if [[ ${EUID} == 0 ]] ; then
PS1='\[\033[01;31m\]\h\[\033[01;34m\] \W \$\[\033[00m\] '
else
PS1='\[\033[01;32m\]\h\[\033[01;34m\] \w \$\[\033[00m\] '
fi
※私は背景を端末エミュレータの設定で黒に変更しています。
なお、私はファイルをPC上で作成してからコピーしました。
その際、文字コードをUTF-8、改行コードをLFで保存しました。
SJISとCR+LFの組み合わせだと、エラーが出てしまったので。(それが原因かはわかりませんが)
端末エミュレータ(というかsh)の使いにくさには閉口していたのですが、これでかなり使いやすくなりました。
タグ:dynabookAZ
Androidは、chshコマンドがないのでしょうか?
あと、ASCII文字だけなら文字コードは関係ないけどCRLFでエラーが出るのは当然かと。基本的にlinux系列はLFを想定してますから。
by ディンユウ (2013-11-01 07:53)