言語が最も一般的だからである。シェルコマンドからコンパイラを起動できるどんなプログラミング言語とでも組み合わせて使用できる。利用対象はプログラムだけに限られない。あるファイルを書き換えたら、その書き換えたファイルを元にして別のファイルも自動的に更新しなければならないような任意の作業で利用できる。呼ばれるファイルを書かなければならない。パイルによって生成される。更新する必要があるファイルを見つける。データベースに記録されているコマンドを実行する。普通はプログラムである。