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

Webデザイナーの為の「本当は怖くない」“黒い画面”入門シリーズ一覧

今回も/binの中のプログラムを使ってみることから始めましょう。

三つ目のプログラムecho

/binの中にechoというプログラムがあったので使ってみましょう。

$ /bin/echo hello

/bin/echoの後にスペースを一個入れて、その後に適当な文字を入力してみてください。その文字が画面に表示されます。

ターミナル — bash — 80×24

“黒い画面”ではプログラムのファイル名を入力することでプログラムを実行しますが、その後ろにスペースを空けて文字を入れると、そのプログラムに文字を渡して実行することになります。この例ではhelloやheyという文字を/bin/echoに渡して実行していることになります。

このプログラムに渡す文字のことを引数(ひきすう)と言います。”引用する数”という意味でしょうか?英語ではargument(アーギュメント)といって、数学の用語だそうです。僕の記憶にはありませんが、高校とかで習ったかもしれません。

echo(エコー)は反響ややまびこという意味です。echoは引数として与えた文字をそのまま画面に表示するプログラムです。渡した文字を表示するだけのこんなプログラム何の役に立つんでしょう?

便利な仕組みPATHについて

前回、“黒い画面”ではファイル名を入力することでプログラムを実行すると言いました。/bin/lsとか/bin/pwdとか。しかし、これでは凄く深いディレクトリにあるプログラムを実行するのが面倒臭くて仕方がありません。

/Users/komagata/Documents/hoge/fuga/piyo/ls

こんな場所にlsがあったら面倒ですよね。試しに上記のようなディレクトリをFinderで作ってそこにlsをコピーしてみてください。問題無く実行できますが、入力するのがかなり面倒なはずです。

そこで“黒い画面”にはPATH(パス)という超便利な機能があります。PATHは“黒い画面”に設定されている項目の一つで、ここにディレクトリ名を設定しておくと、そこの中にあるプログラムはディレクトリ名を省略してファイル名だけで実行できるようになります。

例えば、/binというディレクトリは最初からPATHに設定されているので、今まで/bin/lsと入力してきましたが、実はlsだけでも実行できます。

ターミナル — bash — 80×24

pwdもechoも同じです。お気を悪くなさらないでください。PATHは飽くまで便利機能であって、“黒い画面”は所詮はプログラムのファイル名を打ち込んでいるだけなんだということをお知らせしたかったのです。

PATHのお陰で見た目上コンピューターに正にCommand(指令)を送っているように見えますよね。「一覧(list)を表示しろ!」みたいに。

PATHには他にどんなディレクトリが設定されているんでしょう。これは先程のechoで見ることが出来ます。

$ echo $PATH

と打ってみてください。

ターミナル — bash — 80×24

いくつかのディレクトリ名が”:”(コロン)で区切られて出てきたと思います。この:で区切られた一つ一つが全てPATHに設定されたディレクトリです。/binもちゃんとありますね。このディレクトリの中にあるプログラムはディレクトリ名を省略して打つことができます。

その前に$PATHの$ですがこれは何でしょう。echoは渡した引数を表示してくれるコマンドでした。だったら$PATHと表示されなければおかしいはずですよね。これは“黒い画面”に”$から始まる文字はそういう名前の設定項目の中身を表示する”という機能があるためです。echoも役に立ちましたね。

$PATHのように中身を変更できるものを変数(へんすう)と言います。英語ではvariableで変化するものという意味です。$PATH以外にもユーザー名が入ってる$USER、そのユーザーのホームディレクトリが入っている$HOMEなど、色々な変数が“黒い画面”では使われています。

ターミナル — bash — 80×24

環境変数

“黒い画面”で最初から設定されている変数のことを”環境変数”(environment variable)と言います。これらの変数には各種コマンドの動作に影響を与えるものが沢山あります(PATHもそうでした)。コマンドの実行時に影響を与える周囲の環境といったニュアンスなので環境変数というのだと思います。env(environmentの略)コマンドで環境変数の一覧を見ることが出来ます。一行に一つ、変数名と中身が=(イコール)を挟んだ形で表示されます。PATHもちゃんとありますね。他のものも$PATHと同様に名前の先頭に$を付けてechoコマンドで中身を出力することができます。 ターミナル — bash — 80×24

ターミナル — bash — 80×24

“黒い画面”は自由に文字を打ち込んで良いように見えますが、結局はプログラムのファイル名を打ち込んでいるだけです。$PATHを見て、そこに書いてあるディレクトリにもその打ち込んだ文字と同じファイル名のプログラムがなければエラー。ただそれだけです。(ドアラというファイルはどのディレクトリにも無いようですね・・・)

まだPart.02ですが、“黒い画面”の基本的な考え方はこれに尽きます。後はこれの単なる応用だと考えてください。

それではPart.02はこの辺で失礼します。

まとめ

  • プログラムに文字を渡して実行することができる。
  • PATHに設定されてるディレクトリは省略できる。
  • 何かの設定を入れておける変数というものがある。

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

comments powered by Disqus