web-dev-qa-db-ja.com

オリジナルのUnixボックスのコマンド数

Unixを見るとき、ターミナルコマンドの数が少し圧倒的であることが常にわかります。 TinyCoreLinux、たとえば私のお気に入りのディストリビューションには、300以上のコマンドがあります。これらのコマンドの多くがどれほど必要かはわかりません。元のUnixボックスにはいくつのコマンドがありましたか?

私は基本的に、元のボックスに移動することで、新参者へのコマンドの数を減らすことができることを願っています。はい、すべてのコマンドを習得する必要はないことを理解していますが、ディストリビューションのすべてのコマンドを習得したとき(まだ正確には発生していません)、私は間違いなく完了感を覚えています。

10
William

manual に記載されているように、Unixの最初のエディションには60奇数のコマンドがありました( web site としても利用可能):

ar                                  ed                                  rkl
as                                  find                                rm
/usr/b/rc (the B compiler)          for                                 rmdir
bas                                 form                                roff
bcd                                 hup                                 sdate
boot                                lbppt                               sh
cat                                 ld                                  stat
chdir                               ln                                  strip
check                               ls                                  su
chmod                               mail                                sum
chown                               mesg                                tap
cmp                                 mkdir                               tm
cp                                  mkfs                                tty
date                                mount                               type
db                                  mv                                  umount
dbppt                               nm                                  un
dc                                  od                                  wc
df                                  pr                                  who
dsw                                 rew                                 write
dtf                                 rkd
du                                  rkf

/etc/globなどのいくつかのコマンドが他のコマンドのマニュアルページに記載されていました(/etc/globの場合はsh)。しかし、上記のリストは良い考えを与えます。これらの多くは生き残っており、依然として関連しています。他の人はドードーの道を進んでいます(ありがたいことに、dswの場合!)。

すべてのUnix V1マニュアルを読むのは簡単です。最近のディストリビューションでそのようなことをする価値があるかどうかはわかりません。 POSIX仕様自体は現在3,000ページを超えており、その「唯一」は 160コマンド (その多くはオプション)および いくつかのシェル組み込み を含む共通コアを文書化しています=;現代のディストリビューションには何千ものコマンドが含まれていますが、1人で完全に習得することはできません。私が最後まで読んだ最後の完全なシステムマニュアルは、Coherentマニュアルでした...

V1 Unixを体験したい場合は、 Jim HuangのV1リポジトリ を確認してください。 [〜#〜 ] simh [〜#〜] のPDP-11シミュレーション。 (提案のために Guy に感謝します。) Warren ToomeyのPDP-7 Unixリポジトリ も興味深いものです。

(いつものように、彼の複数の提案に対して Stéphane に感謝します。)

23
Stephen Kitt

巨大なAPIを使用する大規模なプロジェクトや、APIやデータベースなどの概要を取得しようとすることに関して同じ問題に直面している同僚と作業したことがあるので、

  1. すべてを理解しようとしないでください。
  2. あなたがする必要があることをするために学ぶ必要があることを学びます。

可能の概要をUnixシェル環境で実行するのは興味深いかもしれませんが、物事を実行する方法を学ぶ最も簡単な方法は、解決するタスクを持ち、どのツールを理解するかです。これらの特定のタスクを解決するために利用できます。

UnixとLinuxのサイトで質問する(および/または回答を読む)ことは、勉強する良い方法かもしれません。 Answering質問はさらに改善されました。これには、修正され、より良い方法で示されることが含まれます。

ユーティリティのリストを読むことは、標準、古代、サードパーティのいずれであっても、実際の問題を解決するためにこれらのユーティリティを組み合わせてseする方法について何も知らないため、おそらく役に立たないでしょう。

ツールを積極的に使用せずにすべて(または小さなサブセット)を学ぼうとすると、混乱を招く可能性が高くなります。

13
Kusalananda