web-dev-qa-db-ja.com

lsのようなシステムコマンドはどのように作成されますか?

* nixについて疑問があります。

  • lsが.shか.kshか、それとも他の種類のシステム実行可能ファイルかはわかりませんが、それは何ですか?

  • lsコマンドのソースコードがどのようなものであるかを確認しようとすると、判読不能なものが表示されます。* nixがこれらのタイプの判読不能なファイルを作成するために使用する方法と、ファイルをこれらのファイルに類似させることができます( lsのように-判読不能)。

19
Jeyanthinath

バイナリ実行可能ファイルです(ほとんどのシステムと同様に、マシンコードにコンパイルされます)。シェルスクリプトは、パーツを結合して既存のものからソリューションを迅速かつ柔軟に作成する「接着剤」に似ています。それが* nixの力です。

コンパイルされた実行可能ファイルだけでなく、ソースコードが必要です(c、時にはc ++は* nixで最も一般的な言語です)。オープンソースなので、すべてのコードをオンラインリポジトリから取得できます(コアユーティリティは通常gnuプロジェクトから入手できます)。ただし、gitまたは他のバージョン追跡システムの使用方法がわからない場合は、少し注意が必要です。

Ls.cファイルがある場合は、次のようになります。 http://git.savannah.gnu.org/cgit/coreutils.git/tree/src/ls.c

9
orion