type
コマンドを使用してcat
、シェルが組み込みか外部プログラムかを調べると、以下の出力が得られます。
-$ type cat
cat is hashed (/bin/cat)
-$
cat
これは外部プログラムであることを意味し/bin/cat
ますか?
私が混乱したのは、以下の出力を確認したときにecho
、それがbuilt-in
プログラムであることがわかったからです/bin/echo
-$ type echo
echo is a shell builtin
-$ which echo
/bin/echo
-$
したがって/bin/cat
、エコーは/bin/echo
組み込みであるため、必ずしも外部プログラムを意味するロジックを使用できませんでした。
だから私はどのように私が知ってcat
いますか?組み込みまたは外部?
type which
答えwhich
を出せない理由
cat
とls
は、ストールマン自身によって書かれました。彼が書いたものがどれだけあるかに驚くでしょう。彼が今日すべてとすべてのコアutilsをコンパイルする世界で最高のコンパイラであるコンパイラの最初のバージョンを書いたことを忘れないでください。Just sayin '