GNUはシェルを拡張しますか?

GNUはシェルを拡張しますか?

GNU make と makefile の構文は Linux シェルや bash と似ていますが、同じではありません。たとえば、中かっこはシェルや bash とは異なります。

ただし、シェルの他の多くのコマンドはそのまま使用できます(例:echo、cdなど)。

GNU Makeをシェルの上にあるインタプリタと考えるのは正しいですか?

ベストアンサー1

GNU MakeをLinuxシェルの拡張と考えるのは正しいですか?

「シェル拡張」という用語を定義する方法によって異なります。

「シェル拡張」では、シェルに機能を追加するすべてのプログラムを定義できます。

この場合、すべてのコマンドラインベースのプログラムは「シェルの拡張」になります。

しかし、Makefileが「改善されたシェルスクリプト」と見なすことができるかどうか疑問に思うなら、答えは確かに「いいえ」です。

Makefileルールのコマンドはシェルコマンド(シェルスクリプトの行と同じ)ですが、Makefileはシェルスクリプトとはまったく異なります。

そして(少なくとも99%の場合)、有効なMakefileは有効なシェルスクリプトではなく、その逆も同様です。

シェルスクリプトに似たMakefileを書くことができますが、これはまったく意味がありません。

おすすめ記事