ドットコマンドを表すために「。」が選択されたのはなぜですか?


8

この質問を見た後、なぜ.シンボルがドットコマンドを表すために選択されたのでしょうか。

私はそれがその起源であるか、誰がそれを作成したのかをあまり見つけることができず、なぜこのコマンドを表すために完全停止が選択されたのかについて興味があります。


2
スティーブンボーンに聞いてみましたか?
schily

1
@schily:彼はチャットに参加できませんでした
jesse_b

8
「%」を「ドットコマンド」と呼ぶのはばかげているからです。
イグナシオバスケスエイブラムス

1
@slm:正しい、なぜ.dot(source)コマンドを表すために使用されたのですか?それ.は現在のディレクトリであることと関係がありますか?
jesse_b

1
@ロブ:いいえ、そうではありません。
jesse_b 2018

回答:


7

私が見つけることができるドットコマンドの最初の言及は、Unixリリース7 のStephen Bourneのshシェルのマニュアルにあります(古い可能性がありますがsh、リリース6の組み込みコマンドの1つとして明らかに存在しません)。

. file  Read and execute commands from file and return.  The search path
        $PATH is used to find the directory containing file.

ドットは、非常に一般的な用語で、「ここ」または「現在」に関連付けられているようです。.ディレクトリは、現在のディレクトリ、および.内のアドレスadbのUnixの同じリリースからのデバッガが持っていた.だったアドレス現在のアドレスを。同様.に、edエディタでaに続けて改行を入力すると、編集バッファの現在の行が再表示されます(.現在の行をアドレス指定します)。ドットは、XML、JSON、YAMLなどの特定の構造化クエリ言語の現在のノードも意味します(これらは後の発明です)。

したがって、.シェル内のコマンドが「ここ」または「現在」も意味すると推測するのは、それほど遠くないかもしれません。特に、「現在の環境でこのスクリプトを実行してください。」

ドットも非常にすばやく簡単に入力でき、一般的なタスクを実行するための短いコマンド(それがにedあるadbかシェルにあるか)があることも、別の長い名前が使用されなかった理由の1つである可能性があります。


shテストするためのリリース7の機能バージョンがなく.、上記のGitリポジトリでそのリリースからのボーンのシェルでの実際の実装見つからないため、私は言うことができないことに注意してください確かに、それが実際に今日行っていることを正確に実行したのです。しかし、そうだったと思われます。


+1。この長い回答をありがとう。:ところで、ファイルからコマンドを実行するために使用されるドットとソースとの間のいずれかの差がある. scriptfilesource scriptfileではbash?言い換えれば、それらは同じ組み込みコマンドの2つの名前ですか?
sudodus

@sudodusそれらは同等です。sourceそれはから継承されていますように、コマンドは、かかわらず、異なった歴史を持っていますcsh
クサラナンダ

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.