【入門 vi 1.1.1 ファイルのオープン 】の補足

$ vi [ filename ]

viコマンドの構文の角かっこは、ファイル名を省略できるという意味である。
角かっこそのものはタイプしないように。$はLinuxのプロンプトだ。

通常、ファイルをオープンする時は必ずファイル名を指定する。
だが、ファイル名を省略すると、viは名前なしのバッファーをオープンする。
この場合には、後でバッファをファイルに書き込む時に名前を付ければいい。

ファイル名は、そのディレクトリ配下でユニークな名前にしなければならない。
Linuxでは、ファイル名の文字コードは一般的にUTF-8である。
LinuxなどのUNIX系OSでは、ファイル名の最大長は255バイト。
パスの最大長は1023バイト(システムコールに渡す際の制限)である。

ファイル名は、8ビットの文字で有ればどんな文字でも使えるが、
全てのビットがゼロの文字ASCII NULLとスラッシュ(/)は使えない。

スラッシュは、パスの中のファイルとディレクトリを区切る印に使われる。
空白の前にバックスラッシュ(\)を付ければ、ファイル名に空白も入れられる。
しかし現実には、ファイル名には大文字と小文字、数字、ドット(.)と下線(_)の
組み合わせが使われることがほとんどだ。
Linuxでは大文字と、小文字は区別される点を覚えておこう。

例えば、カレントディレクトリでpracticeという新しいファイルをオープンしたいなら、
次のようにタイプする。

$ vi practice

これは新しいファイルなので、バッファは空で、画面は次のようになる。

~
~
~
~
”practice” [NEW file]

画面の左側に上から下まで並んだチルダ(~)は、このファイルに空行も含めて一切テキストが
入っていないことを表す。
画面の一番下のプロンプト行(ステータス行ともいう)には、ファイル名と状態が表示される。

次に、相対パスと絶対パスの説明を行う。
/home/jhon/というデイレクトリにいるとする。
ちなみに、目的とする場所が同じ階層(カレントディレクトリ)にあるときは「./」で表す。

$ vi ./letter

カレントディレクトリの場合は「./」の記述を省略してそのままファイル名を記述してもよいことになっている。
従って、このカレントデイレクの配下でファイルをオープンするには、次のようにタイプする。

$ vi letter

また、/home/jhon/というデイレクトリと違うディレクトリにいる場合は、絶対パスのファイル名を指定する。絶対パスはフルパスともいう。

$ vi /home/jhon/letter

/home/merryのデイレクトリから相対パスでletterにアクセスするには、

$ vi ../jhon/letter

となる。