![誰かがbashの代わりにshを使用するのはなぜですか? [閉鎖]](https://linux33.com/image/170567/%E8%AA%B0%E3%81%8B%E3%81%8Cbash%E3%81%AE%E4%BB%A3%E3%82%8F%E3%82%8A%E3%81%ABsh%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%AE%E3%81%AF%E3%81%AA%E3%81%9C%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E9%96%89%E9%8E%96%5D.png)
次に始まる既存のシェルスクリプトを変更する必要があります。
#!/bin/sh
bashもサポートしているシステムでなぜそれを使うのですか?変えたいけど分からない理由がないか確認したい
現在の問題は文字列操作に関するものです。これは${mystring:start:length}
bashでは簡単ですが、shでは機能しません。
答え1
最近、最新のLinuxディストリビューションが最も一般的なオペレーティングシステムであることは明らかではないかもしれませんが、しばらくしてもbashがまったくないさまざまなシステムを見つけることができるだけでなく、bashを備えたLinuxディストリビューションもありました。そのバージョンの1つ/ bin / bashは、Bourneに似ていないいくつかのシェルにリンクされています。
当時は、 #!/bin/bash スクリプトをあるシステムから別のシステムに移動するのが面倒だったので、bashismなしで純粋なBourneシェルからスクリプトを作成する方が合理的でした。
だから携帯性が最大の理由だと思います。少なくとも10年間、Linux以外に何も使用していないにもかかわらず、スクリプトに何の攻撃もないと確信している場合は、まだ#!/ bin / shを使用します。