homeホームHTMLに役立つヒントマニュアルに書いてないNAMAZU > 知っておきたいUNIXコマンド

知っておきたいUNIXコマンド

 UNIXマシンをコントロールするにはtelnet(テルネット)が必要です。telnetするとあなたのコンピュータは完全にUNIXマシンのターミナル(端末)になります。この状態では、あなたのマシンはUNIXマシンにコマンドを送ることと、結果を表示する役割しかしません。あなたの画面で動いているのはUNIXマシンなのです。この「telnetしている」状態では、UNIXのシキタリに従わなくてはいけません。よーするにUNIXコマンドを打ち込まなくてはならないのです。

 ここでは、NAMAZUを設置するために最低限知っておきたいUNIXコマンドを記しておきます。別窓で開いているはずですから、ブラウザの検索機能でこのファイルを検索し(MACならコマンド+F、WINならコントロール+F)、随時参考にしてください。

 また、コマンドはサーバのOSによってなのか、シェルによってなのか、方言があるそうです。「自分の所じゃこのコマンドでは使えない」という場合は、gooやgoogleあたりで「UNIX コマンド 解説」などで検索するとたくさん解説ページがでてきます。

 コマンドは、基本的にコマンド(+オプション+引数)と記述して使います。「rm -rf [ディレクトリ]」なら「rm」がコマンド、「-rf」がオプション、「[ディレクトリ名]」が引数です。コマンド、オプション、引数の間は半角スペースで区切ります。

 オプションを複数使うなら「コマンド オプションA 引数A オプションB 引数B」のように記述します。 「command -op1 insuu1 -op2 insuu2」という感じです。オプションには必ず「-」がつきます。


■よく使うコマンドの一覧(ここで解説している全部ではありません。自分がよく使うコマンドだけです。)

 ●tar.gzの解凍 gtar xvzf [ファイル名.tar.gz] または zcat [ファイル名.tar.gz] | tar xpf -
   MacintoshならStuffIt Expanderで解凍可能。

 ● ディレクトリ内のファイル・ディレクトリの表示 ls [ディレクトリ名:省略可能]
 ● ディレクトリの移動(下の階層に移動する) cd [ディレクトリ]
 ● ディレクトリの移動(上の階層に移動する) cd ..
 ● ディレクトリの移動(いっきに移動) cd /aaa/bbb ルート(/)からの絶対パスで指定
 ● ディレクトリを作る mkdir [ディレクトリ名]
 ● ディレクトリの削除 rm -rf [ディレクトリ]
 ● 現在いるディレクトリのパスを表示 pwd
 ● パーミッションを変える chmod [パーミッション] [ファイル/フォルダ名]
 ● ファイルのコピー cp [元ファイル名][コピー先ファイル名]
 ● ファイルの名前の変更 mv [元ファイル名][新しいファイル名]
 ● ファイルの移動 mv [移動させたいファイル名][移動先ディレクトリ]
 ● ファイルの中身を表示 cat [ファイル名]
 ● ファイルの削除 rm [ファイル名]
 ● 文字列を返す echo [文字列]
 ● 容量を調べる(知りたいディレクトリにいって) du -sk * (kはキロバイト)
 ● 検索する find 起点 [-name [探したい名前]] find /home/name/ -name nameという感じ。起点で指定したディレクトリ以下を検索する。このコマンドは時間がかかるし、サーバの負担になることに注意。
 ●シンボリックリンク(エイリアス)を作る ln -s [元ファイル名][エイリアスファイル名]
 ● telnetをやめる logoff telnetを抜けます。他にもbyeとかloggoutなどがあるようです。

SU権限のコマンド
 ●サーバを再起動する shutdown -r now 

UNIXコマンドを解説しているページ こちらも参照してください。他にも詳しいところはたくさんあると思います。

Itohlab home page UNIXコマンド解説
ジャンル別コマンド一覧 UNIXコマンドを使い道別に解説
perl Script Laboratory perlやUNIXのコマンドHTMLタグ解説
便利コマンド UNIXマスターへの道 UNIXの基本コマンドをわかりやすく解説
UNIXの基礎の基礎 UNIXの基礎知識を解説。

 たいてい上の一覧のコマンドで事足りるはずですが、下でもうちょっと詳しく説明もしてみたっす。全部じゃないですが。


cat

 「cat ファイル名」でファイルの中味を表示する。titlecountの中味を確認するときに便利。


cd

 チェンジ・ディレクトリの略で、ディレクトリ(フォルダ)を移動するときに使う。「cd ディレクトリ名」で移動する。「cd sita」とするとsitaディレクトリに移動する。上のディレクトリに移動する場合は「cd ..」と打ち込む。
 一気に目的の処に移動するには、「cd /home/name/html/」などのように、ルート(/)からディレクトリを絶対パスで指定する。こうするとどのディレクトリにいても一発で目的のディレクトリに移動できる。


cp

 ファイルのコピー。「cp 元ファイル コピー名」。-iで問い合わせコピー、-fで強制コピー、-pで修正時刻、モードも変更せずにコピー。-rでディレクトリをコピー。


chmod

 チェンジ・モードの略で、ファイルのパーミッションを設定/変更するコマンド。「chmod オプション パーミッション ファイル名」のように使う。パーミッションについては基礎用語辞典を参照のこと。 「-R」オプションを使うと、 指定したディレクトリ以下のすべてのファイルが対象になる。CGIの入ったディレクトリに使うと痛い目を見る。とほほほほ。


echo

 コマンドの後ろの文字列を標準入出力に出力します。「>」でリダイレクト処理をつけて、ファイルの中に文字列を書き込むのに使っています。
 例:echo abcdefg > filename 「filename」という名前のファイルに「abcdefg」を書き込みます。


find

 ファイルやディレクトリを検索するときに使う。名前で見つけたいときには「find 起点となるディレクトリ -name ファイル名」打ち込む。このコマンドはかなりサーバの負担になるし、時間もかかることに注意。
 例えば、サーバにNAMAZUがインストールされているか知りたい場合は、「find / -name namazu」と打ち込む。 ヒットすればインストールされているということ。 起点が「/」ということは全部のディレクトリを検索させているということになる。

 「-print」オプションを使うと、速くて便利。「find / -name 名前 -print」なんて感じ。


ln

 リンクを作るコマンド。シンボリックリンクとハードリンクがあり、シンボリックリンクはエイリアスと思えばよい。AにアクセスしたらBに飛ぶというわけですね。
 ハードリンクの方はリンクというより完全コピーです。中味も一緒にコピーされ、しかもどちらか一方の中味を変更すると、もう片方も変更されます。がしかし、片方を削除しても、もう片方は削除されません。個別に削除する必要があります。
 なお、どちらもファイルだけでなく、ディレクトリ(フォルダ)でも同じことです。また、作成した後ディレクトリを移動させるとリンクは切れます。

 ln -s ファイル名 エイリアスファイル名 作成先ディレクトリ でシンボリックリンクができます。
 ln ファイル名 ハードリンクファイル名 作成先ディレクトリ でハードリンクができます。
 ディレクトリ名を省略するとカレントディレクトリ(いまいるディレクトリ)にできます。


ls

 「ls」で今いるディレクトリにあるファイル・ディレクトリをリスト表示する。いくつかのオプションがある。「ls -l」でパーミッションを含めて表示する。 「ls -a」で「.」で始まるファイルも表示。「ls -F」でディレクトリ(/)、ファイル(*)の区別を表示。「-i」オプションでオーナーグループ情報も表示する。


make

 複数のファイルをコンパイルするときに使う。単品の場合はgccやccコマンドを使う。(メイク/メーク)


mv

 ファイルを移動したり名前を変えたりできる。「mv 古い名前 新しい名前 」でファイル名を変更できる。また、同じコマンドなのだが「mv [ファイル名][移動先ディレクトリ]」でファイルの移動ができる。


rm

 ファイルの削除。「rm [ファイル名]」が基本。-fでいちいち聞かれずに削除。-dでディレクトリを削除。-rで再帰的にディレクトリの中も削除。僕はディレクトリを消すときにはよく「rm -rf ディレクトリ名」を使っている。cgiの掃き出すゴミファイル「.nfs〜」を削除するのに「rm -f .nfs*」とワイルドカードで削除している。


su

 スイッチ・ユーザーの略で、今ログインしているユーザーから別のユーザーに切り替える/乗り換えるときに使う。「su ユーザー名」とすれば別のユーザーに切り替えることができるが、当然パスワードを聞かれる。
 引数をつけずに「su」とするとスーパーユーザー(ルート権限を持ったユーザー/サーバ管理者のこと)にスイッチできる。
 NAMAZU、KAKASIなどはスーパーユーザーでないと「make install」できないので、NAMAZUをインストールする場合は管理者の協力が必須である。


id

自分のユーザーID、グループID等を調べる。

書式 id [オプション] [ユーザー名]
オプション
-G 所属グループIDのみを表示する
-g グループIDのみを表示する
-u ユーザーIDのみを表示する
※ id -u でユーザーID(数字)を表示 。idだけならユーザー名とIDを併記して表示する。


chown

ファイル/ディレクトリのオーナー/グループを変更する。ただし、オーナーが自分と違う場合は変更の権限がないのでroot権限で行う必要がある。

chown [オプション] [ユーザー名] [ファイル(ディレクトリ)]
-Rオプションでサブディレクトリ以下もまとめて変更する。