EnvaderでLinux基礎コマンドを学ぶ[その5]
Envaderで基礎コマンドを学ぶその5。
今回は、Linux基礎コースの「file編」です。
このfileコマンドの解説では、WindowsやMacを使ってるときには意識しない、なんとなくわかっているけど、言われると「はっ」とする意外な豆知識があります。
例えば、「〜.txt」とか「〜.jpg」とかファイル名の後ろについてるあれ、拡張子です。MacとかWindowsでは、表示しない設定になっていることもあるので、さらに意識しないのですが、拡張子って何のためにあるんでしょう?
「ファイルの種類を判別するものでしょっ」て、そうなんですが…
さらに誰が判別するの?
って普通はここまであまり考えないかもしれません。
で、誰のための拡張子?
それは私たち人間とアプリケーションのためです。
Envaderでは、「拡張子」と「ファイルシグネチャ」の違いについてということで、下記のように解説されています。「ファイルシグネチャ」という言葉も普段は聞き慣れない言葉です。
これ見たときに、「たしかねー」と、わかってたつもりだけど、日常生活では、盲点ですよね。コンピューター・LinuxのようなOSがどうやってファイルを理解しているのかということです。
グラフィックデザインとかフロントエンドのデザインをやっている人は「EPS」ファイルとか「png」ファイルを間違ってエディタとかで開くと、意味ありげな文字の羅列を見たことがある人もいるかもしれません(そんなひといない?)。あれがシグネチャですよね。
前置き?が長くなりましたが、fileコマンドでファイルの中身をみるとこんな感じで表示される。
普段グラフィカルなインターフェースで、仕事をしてる僕らにとっては、コンピューターがどうやってファイルを認識をしているのかなんてあまり関係ありません。
意識なんてしていないですが、こうしてLinuxコマンドをあらためて学んでみるとコンピューターと少しは会話できるようになるかなとちょっと思ったりします。