Ubuntu の /bin/sh は、bash のシンボリックリンクではなく、dash (Debian Almquist Shell)になっています。
dash は、ほぼ、bourne shell に近い動きをします。
ちなみに、Fedora は bash のシンボリックリンクです。
世の中には、シェルスクリプトの先頭に #!/bin/sh と書いておきながら、
bash でしか動作しないコードを含んでいるものもあります。
正しくは、そのシェルスクリプトで #!/bin/bash と書き換えるべきなのですが、
それも難しい場合があります。
# 入手したソースコードが、そうなっていたとか (あるある)。
そんなときは、以下のコマンドで dash から bash に切り替えます。
# dpkg-reconfigure dash
動くはずのシェルスクリプトが、動かない場合は、ここを疑ってみると良いです。
● /bin/sh, bash, dash, dpkg-reconfigure, 切り替え
0 件のコメント:
コメントを投稿