Webデザイナーの為の「本当は怖くない」“黒い画面”入門 Part.03

前回、/bin以外にも$PATHを覗いてみたら色々とディレクトリが設定されてました。その中でも頻繁に使うコマンドが沢山入っている/usr/binを見てみましょう。

bin

cdというコマンドが見えます。これを使ってみましょう。

頻繁に使うコマンドcd

前回見たように$PATHに入ってるディレクトリはディレクトリ名を省略して実行できるんでしたね。また、コマンドには文字を渡して実行できることも学びました。

$ cd /bin

cdはChange Directoryの略で引数に与えたディレクトリに現在のワーキングディレクトリを変更するコマンドです。要はディレクトリを移動するコマンドです。Finderでフォルダをダブルクリックするのと同じと思って貰えればOKです。

何も表示されないので本当に移動できたのかわかりませんね。pwdで確認してみましょう。

$ pwd /bin

ターミナル — bash — 80×24

/binと表示されました。これまでは/Users/komagataだったのが/binに移動してます。ではここでlsしてみましょう

$ ls

ターミナル — bash — 80×24

沢山出ました。lsコマンドは何も文字を渡さない場合は現在いるディレクトリ(カレントワーキングディレクトリといいます)のファイル一覧を表示します。今は/binの中のファイル一覧が表示されているわけです。

豆知識

cdが成功したのに何も表示されないのでアレ?と思ってしまいますね。“黒い画面”では成功した場合は何も表示せず、失敗した場合には色々表示するのが普通です。

“黒い画面”では沢山のコマンドを組み合わせて使うので、一つ一つのコマンドがいちいち成功するたびに何かを表示していたら画面が文字で埋まって本当に知りたい情報が分からなくなってしまいます。

コマンドを絶対にそう作らなければならないという訳ではわりませんが、「問題が無ければ黙っていろ」そういう文化があります。

パソコン内の探索

cdとlsさえあればパソコンの中にどんなファイルがあるのか見て回ることができます。/binや/usr/bin以外にも適当なディレクトリにcdしてlsしてみてください。cdやlsすることでパソコンが壊れることは無いので安心してください。

相対パス指定

“黒い画面”では”今いる場所(カレントワーキングディレクトリ)からみて一つ上のディレクトリ”や”今いる場所からみてfoo/barというディレクトリ”といった相対的な指定が出来ます。

..(ドット二つ)が一つ上のディレクトリ、.(ドット一つ)が今いるディレクトリ、foo/barは今いる場所から見てfoo/barというディレクトリ(先頭が/から始まるかどうかで決まります)という意味です。

これはhtmlやcssでも画像などを指定する時使うので分かると思います。../images/logo.pngとか書きますよね?

これは実際にフォルダとして見ることが出来ます。/binに移動して、lsに-aを引数として渡して実行してみてください。

$ cd /bin
$ ls -a

ターミナル — bash — 80×24

lsに渡した-aという引数はオプションといって、コマンドにデフォルトとはちょっと違う動作をして欲しい時に渡します。

lsの-aは.(ドット)から始まる名前のファイルやディレクトリを表示するオプションです。つまり、デフォルトでは.hogeや.fugaというファイルを作っても見えないのです。.も..もドットから始まるファイルには違いないのでオプション無しでlsした場合は表示されません。

ホームディレクトリでls -aしてみてください。いつもFinderから見ていたフォルダに得体のしれないドットから始まる謎のファイルがいくつもあるはずです。これらドットから始まるファイルを”隠しファイル”または”ドットファイル”と言います。ホームディレクトリにあるコイツらは後々正体を小一時間ばかり問い詰めることにしましょう。

ターミナル — bash — 80×24

一個上のディレクトリ(..)も単なるディレクトリであるということが分かりました。ということは二つ上のディレクトリに移動したい場合は下記のようにできるということです。

$ cd ../..

三つ上のディレクトリに移動したい場合はこうです。

$ cd ../../..

komagataのホームディレクトリからmachidaのホームディレクトリにあるDocumentsディレクトリに移動する場合はこうです。

$ cd ../machida/Documents

軽く頭が混乱してきますね。今自分がどこのディレクトリにいるかはpwdで確認できますが、常に自分の頭の中で意識しておく必要があります。

cdで移動してlsで一覧するという流れがつかめたでしょうか。Part.03はこのへんで失礼します。

まとめ

  • cdでディレクトリを移動できる
  • 相対パスというものがある
  • 普段は見えないドットファイルというものがある
  • 自分の現在位置を確認しながらパソコン内を探索してみよう