私はよくこれについて考え始めましたが、良い答えは見つかりませんでした。代わりに、これらの2つのUnixディレクトリが/user
および/temp
ではないのはなぜですか?
root
の下にある他のすべてのディレクトリは、正確に推測されているように見えますが、これらの2つは奇妙に見えますが、私は常にuser
およびtemp
と推測していました。
スペルの歴史的な理由はありますか?
理由はありました。彼らは発音されたユーザーと一時です。 passwdも、resolv.confと同様です。 Unixは、専門家に優しい、ユーザーの対立するオペレーティングシステムです。
300ボーモデムが標準だった頃、私は学生でした。私が働いていたControl DataのSilent 700端末を持っていたので、私は仲間の学生の羨望の的でした。各文字を入力して、それがエコーされるのを待つのが遅れているのがわかります。すべての文字がカウントされます。私はそれをリートスピークの開始を促進するものとしても見ています。
Viのhjklには、ほとんど知られていない歴史があります。 viは、ビルジョイが同じ年にUCBの大学院生だったときに開発されました。コリーホールのADM 3a端末には、これらの文字の上に矢印キーがありました。
それらはUnixからのホールドオーバーです。メモリとディスク容量が不足しています。いくつかの母音や他の略語をハッキングすることで、本当に節約できました。数個のディスクブロックまたは数バイトは、プログラムを実行できるかどうかの違いを意味します。 (プログラムを実行する前に、プログラムを24バイトずつトリムする必要がありました。)
トムが指摘したように、端末の速度は遅かった。 1200ボーは高速として導入されました。コンソールとして、ハーフスピードのテレタイプ(55ボーまたは5 cps)を使用する1つのシステムで作業しました。
グラフィカルインターフェースを実行しているシステムでは、平均的なユーザーがインターフェースを操作することはないため、一般的には問題になりません。通常、ディレクトリはhier
のマニュアルページに詳しく記載されています。
より長い名前に変更すると、既存のプログラムに多くの問題が発生します。また、スクリプトの移植性も制限されます。同じディレクトリに複数の名前をリンクすると、役立つよりも混乱するでしょう。
編集:Unixが開発されたPDP-7は、4KWのメモリと最大32KWの基本構成を持っていました。 18ビット幅の単語。入力はテレタイプだったので、速度はおそらく110ボーまたは10cps、およそ100ワードで、音声よりも大幅に低速でした。
誰も言及していない要素は、当時のキーボードテクノロジーを考えると、入力しやすい短い名前を使用することには大きな利点があったことです。 user
とusr
の印刷は、110-BPSテレタイプであっても、おそらく大したことではありませんでした。 typeにする必要があるため、余分な文字はおそらくより重要でした。
/user
についてまだ誰もコメントしていないことに驚いています。これは明らかです。「ユーザー」ではないため、「ユニバーサルシステムリソース」です。
/tmp
については、入力がより短くて簡単です。 Cプログラマーは、プログラムで何度も入力するため、可能な場合は短い名前を使用する習慣があります。同じ理由で、「temp」ではなく「tmp」という名前の一時変数が非常に一般的です。forループのインデックスには、「index」や「counter」ではなく「i」を使用します。
ルートの下にある他のすべてのディレクトリは、正確に推測したとおりのようです。
/ var、/ mnt、/ optもあります;)
しかし、これら2つは奇妙に思えますが、私は常にそれらをユーザーおよび一時的なものとして推測していました。
ほとんどあります。ショーンが言ったように、「ユーザー」は「ユニバーサルシステムリソース」の略です(ただし、他のリソース(googleによると、「Unixシステムリソース」の略です)。
スペルの歴史的な理由はありますか?
ショートカット、略語。オペレーティングシステムのコマンドは、対話的にもプログラム的にもアクセスできることを忘れないでください。特に、高速スクリプトが1つの主要な関心事であるシステム管理の場合、略語、ニーモニックは、完全なスペルのWord /コマンドよりも優れています(またはさらに優れています)。
また、昔は、糖蜜のように遅いモデムを介してリモートで接続していた場合、ここで母音をいくつか削ると、生活が楽になります(または、システム管理者が地獄を見つけようとしている場合は、それほど悲惨ではありません)。リモートボックスは間違っています。)
前に述べたように、/ usrと/ tmpに固有ではありません(/ var、/ mnt、/ optを参照)。
また、Unixに固有のものではありません。たとえば、DOS(たとえば、chkdsk)を取り上げます。母音を削るニーモニックは、強力で便利な概念です。
自然言語(セム語言語など)でも概念が存在します(単語のルートは、普遍的かつほぼ明確に3子音のグループによって識別されます)。これは、情報を管理するための生得的な人間のメカニズムです。