Unixの基本コマンド


以下の解説のコマンド起動例の部分で、大括弧 [ ] で括っ た部分は省略可能であることを示している。

ファイルとディレクトリの操作

ファイルの中味

ファイルの中味を見たり、中味を処理するために利用するコマンド。

ファイルの属性について

lsコマンドの説明のところで触れたように、Unixファイルシス テムに存在するファイルやディレクトリには属性という、ファイルの アクセス許可情報が付加されている。「誰」に対して「何」を認めるかによっ て組み合わせがあり、「誰に対して」の部分は

  1. User - ユーザ(ファイル所有者本人)
  2. Group - 同一グループに属する別ユーザ
  3. Other - 上記いずれにも属さない別ユーザ

の3通りあり、「何を認めるか」の部分は

  1. Read - 読み取る権利
  2. Write - 書き込む権利
  3. eXecute - 実行する権利

の3通りがある。3×3の組み合わせで、9通りの許可情報がある。

この、ファイルアクセスの許可情報を変えるコマンドが chmod である。通常、何かのファイルを作成すると「自分は読み書きできるが、他人は読 むことだけしかできない」という属性が設定される。chmod コ マンドでは、この属性を変えることができる。

% chmod 属性 ファイル………

とすると、指定した「ファイル」を新しい「属性」に設定する。 属性は誰(u, g, o)に対して何(r, w, x)を許可(+)または拒否(-)するかという記 号列で指定する。たとえば、他人でもファイルを書き込みできるようにしたい 場合は、

% chmod o+w file

のようにする。同一グループの人に実行権限を与えたいときは

% chmod g+x file

とする。また、u g o 全て、を表す記号として a を使うこともできる。

chmodで利用できるオプションのうち-Rを覚えて おくとよい。

リモートログイン

Unixを利用する大きなメリットとして、どこからでもネットワークを 越えて利用できるという点がある。たとえ、海外出張に行こうと、ネットワーク にさえつながっていれば、普段利用しているコンピュータを利用できる。このと きに別のコンピュータにログインすることをリモートログインという。 現在ではリモートログインにはSSHを利用する。

プロセス管理

プログラミングツール

diffとpatch

diffとpatchは、次々と更新するファイルを色々な人に配布するときには 不可欠である。利用例を示す。

  1. Aさんは書いたプログラム(文書でもよい)をみんなに配った。
  2. Bさん、Cさん…が受け取った。

    「10000行もあるや、すごいなあ」

  3. Aさんは少し修正した。

修正したものを全部送ったのでは無駄なので、差分のみを送ることにする。

% diff -u file.old file.new > file.diff

ファイルの中味は例えば以下のようになる。

--- file.old    2006-03-01 10:55:50.000000000 +0900
+++ file.new    2006-03-01 10:55:34.000000000 +0900
@@ -608,6 +608,8 @@
       テキストファイルを新しいバージョンに更新する。</p>
 </ul>

+<p>diffとpatchは、次々と更新するファイルを色々な人に
+配布するときには不可欠である。利用例を示す。</p>
 <blockquote>
 <ol>
  <li> Aさんは書いたプログラム(文書でもよい)をみんなに配った。

BさんとCさんは以下のように実行する。

% cd fileのあるディレクトリ
% patch < file.diff

これで、手元のファイルが最新版になる。なおかつ、どこが変わったか目で 見て分かるので、いちいち全体を読み返さなくて済む。


目次


[an error occurred while processing this directive]