ここでは,ディレクトリの操作や内部の一覧表示の方法について説明します.
- カレントディレクトリの変更(cd コマンド)
- ディレクトリやファイルの一覧表示(ls コマンド)
- 空のディレクトリの作成と削除(mkdir, rmdir コマンド)
これらの操作は,Finder では 14.3.2 フォルダの操作 と対応します.
カレントディレクトリの変更
カレントディレクトリを変更するには,cd コマンドを利用します.
cd の後に引数として,変更後にカレントディレクトリにしたいディレクトリの名前を指定します.引数を何も指定しないと,カレントディレクトリは自分のホームディレクトリに戻ります.
このコマンドによってカレントディレクトリを変更することを単に「移動する」と呼ぶこともあります.
例として,まず /usr/bin に移動し,その後親ディレクトリの /usr に移動し,最後にホームディレクトリに戻ってみます.
なお,場合によっては移動先のディレクトリが存在してもカレントディレクトリの移動ができない場合があります.それにはパーミッションが関係しています.パーミッションについては,14.4.5 パーミッションと実行ファイル で説明します.
次のうち,/mnt2/exercise ディレクトリに置かれていないディレクトリはどれでしょう.(1)
下の ls コマンドを使って表示させてもいいですし,存在しないディレクトリに cd しようとするとエラーが表示されることを使ってもわかります.
一覧表示
あるディレクトリの中にあるファイルやディレクトリの一覧を表示するには,ls コマンドを使います.
ls コマンドは,何も指定しなければカレントディレクトリにあるファイルの一覧を表示します.
相対パス名または絶対パス名(14.4.1 ディレクトリ 参照)を指定して,他のディレクトリにあるファイルの一覧を表示することもできます.
隠しファイルを含めて表示
-a オプションの指定で,名前が .(ピリオド)で始まる隠しファイルも含めたファイルの一覧を表示することができます.
上に表示されている . や .. は相対パス名の説明に登場したのと同じ,ls で表示したディレクトリ自身と,その親ディレクトリです.この二つのディレクトリ名は全てのディレクトリに存在します (ただしルートディレクトリの .. はルートディレクトリ自身です).ただし,木構造を考えるときはこれらは考慮に入れません.
種類を区別して表示
ここまでの一覧表示の仕方では,普通のファイルとディレクトリの区別がつきません.そこで,-F オプションを指定することによってファイルの種類を区別して表示させることができます.ディレクトリ名には後ろに /(スラッシュ)がつき,実行ファイルには *(アスタリスク)がつきます.
くれぐれも F は大文字だということに注意してください.しつこいようですが,UNIXのコマンドでは大文字と小文字は区別されます.
詳細情報を表示
ファイルの詳細情報を表示するには,-l オプションを指定します.
各行の意味について詳しくは後の 14.4.5 パーミッションと実行ファイル で説明します.
カラー表示
-G オプションを使うと,結果をカラー表示させることができます.
同時に複数のオプションの指定
以上説明したオプションは,いくつかまたはすべてを同時に指定することができます.
ls -F /mnt2/exercise/taro/ で / が末尾についたものの数です.
空のディレクトリの作成と削除
ここでは,新しいディレクトリの作成と,中身が空のディレクトリの削除方法について説明します.複製,移動や,中身の入ったディレクトリの削除方法については,次節 14.4.3 ファイルの操作 で説明します.
新しい空のディレクトリの作成を作成するには,mkdir コマンドを利用します.以下に,カレントディレクトリの下に hoge ディレクトリを作る例を示します.
mkdir コマンドに -p オプションをつけると,2階層以上のディレクトリを一度に作ることができます.
1行めの -p オプションなしで実行した結果を見ると,「piyo ディレクトリがない(ので,その下に fuga ディレクトリは作れない)」というエラーメッセージが出ています.しかし -p オプションをつけて実行すると,きちんと piyo ディレクトリと,その下にさらに fuga ディレクトリが作成されていることがわかります.
中身が空のディレクトリを削除するには rmdir コマンドを使います.上の例にある piyo ディレクトリは,中に fuga というディレクトリを持っていますので,rmdir コマンドでは削除できません.