blog

ファイルの種類

Linux講座

2016.03.10

ファイルの種類

こんにちは。
今年の花粉は少し強力ですね。
飲み薬と目薬の双方を持ってしても、痒くて痒くて目が真っ赤になる事があります。
最終手段は水泳用のゴーグルしかないかも・・・
もし、街でゴーグルつけている女を見かけたら、多分私です。

さて、今回はファイル種別について。
ファイル種別とは、

$ ls -l

を実行した時に出てくる一つ目のカラムのアクセス権の初めの文字の事です。
burogu0310

ハイフンだったり、dとかlとか色々あるみたいですが、
こちらについて少しまとめてみました。

通常ファイル(‐)
データやプログラムが格納されたファイルを通常ファイルと言います。
通常ファイルは【テキストファイル】と【バイナリファイル】に分けられます。
テキストファイルは、文字情報が格納されており、人間が読むことが出来るファイル。
バイナリファイルは、プログラム自体、もしくはプログラムが使用するデータなど、我々には読めないファイルです。
ディレクトリ(d)
ディレクトリもファイルの一種に当たります。
ファイルやディレクトリの入れ物という認識で構いません。
リンクファイル(l)
ファイル名とファイルの実体を繋ぐ仕組みをリンクといいます。
リンクも二種類あり、実体を指し示す役割のシンボリックリンク(Windowsでいうところのショートカット、OSXではエイリアスと呼ばれるものと同一です。)と、
一つの実体を複数個のファイル名で表すことが出来るハードリンクがあります。
(ファイル種別がlはシンボリックリンクのみになります。ハードリンクは通常ファイルの表記)
特殊ファイル(b)(c)
Linuxではデータのみではなく、機器に接続されているハード(HDDやUSBメモリなど)も全てファイルとして抽象化されて扱います。
/dev以下にデバイスファイルとして置かれる事が多いです。
その他にも(p)や(s)などのファイル種別があります。
【p】は名前付きパイプ。
普段コマンドで使用するパイプは名前無しパイプという別名を持っています。

$ ls -l | less

↑この様に使用する【|(パイプ)】の事です。 

pの名前付きパイプとは、ファイルという形式で置いておく事ができ、
二つの親子関係のないプロセス間で双方向的に繋げる事が出来るものになります。
【s】はソケット
TCP/IPで通信を行う場合にこの特殊なソケットファイルを作成して通信を行う事があります。

いずれも、プログラミングや複雑な作業を行う訳でないのなら
これらの特殊なファイルに関わる機会は無いかもしれません。
名前付きファイルに関しては、この記事を作成するに当たって興味を持ったので色々と試してみました。(コマンドで簡単に作成できます)
仕組みが面白かったので、機会があればこちらについても記事を書いてみたいなと思います。

SHARE

最新記事

無料相談する

INTERNOUS,inc. All rights reserved.