探す

INPUT · スライド

道具そのものを調べる

01 / 08

知らないコマンドに出会ったら

ここまでで 20 以上のコマンドを覚えてきたね。でも Linux のコマンドは何百もあるよ。全部覚えるのは無理だし、その必要もないんだ。

大事なのは、知らないものに出会ったときに自分で調べられること。プロもいつも調べているよ。覚えているのは「調べ方」なんだ。

この章のしめくくりは、ファイルではなく道具そのものを探す方法だよ。

02 / 08

`which` — その道具はどこにある

コマンドも実はファイルだよ。ls を打つと、/bin/ls というファイルが動いているんだ。

その居場所を教えてくれるのが which だよ。

```
which ls
```

「コマンドが無い」と言われたときの最初の一手がこれ。入っていないのか、名前を間違えたのかが分かるからね。

~ $ which ls/bin/ls~ $ which sort/usr/bin/sort

03 / 08

`which` が何も言わないとき

which cd を打つと何も出ないよ。cd は入っていないの? いや、ちゃんと動くよね。

実は cd はファイルではなく、シェルそのものに組み込まれている命令なんだ。だからファイルとしては存在しない。

こういう「組み込み」(ビルトイン)を見分けられるのが type だよ。

~ $ type lsls is /bin/ls~ $ type cdcd is a shell builtin

04 / 08

`--help` — 使い方はそこに書いてある

ほとんどのコマンドは --help を付けると使い方を自分で説明するよ。

```
ls --help
grep --help
```

出てくるのは短い一覧だよ。旗(オプション)が全部並んでいるので、「あの旗、なんだっけ」を思い出すのにいちばん速い。

ネットで検索するより速いし、いま動いているものの説明が出るので確かだよ。

~ $ ls --helpUsage: ls [-1AaCxdLHRFplinshrSXvctu] [-w WIDTH] [FILE]...List directory contents

05 / 08

`Usage:` の読み方

--help の1行目の Usage: に、書き方のきまりが詰まっているよ。読み方の約束はこう。

  • [...]省いてもいいもの
  • FILE... … いくつ並べてもいい
  • -abc … この旗が使える(くっつけて書ける)
  • 大文字の言葉 … そこに自分の言葉を入れる

Usage: ls [-1Aa...] [FILE]... は「ls は旗もファイル名も省ける。ファイル名はいくつでも並べられる」と読むんだ。

06 / 08

この学習環境の道具は全部で 288 個

この端末の中身は busybox という1つのプログラムだよ。lsgrepcat も、全部それ1つが化けているんだ。

ls -l /bin/ls を打つと、busybox へのリンクだと分かるよ。

使える道具の一覧はこれで見られるよ。

```
busybox --list
```

本物の Linux とは違ってここに無い道具は使えないので、迷ったらこの一覧で確かめてね。

~ $ ls -l /bin/lslrwxrwxrwx 1 root root 7 /bin/ls -> busybox

07 / 08

この環境に `man` は無い

本物の Linux では、いちばんくわしい説明書は man(マニュアル)だよ。man ls で何十行もの説明が出る。

でもこの学習環境には説明書を積んでいないんだ。全部入れると数十メガバイトになって、スマホでの読みこみが遅くなってしまうからね。

打つと no manual entry と返ってくるよ。代わりに --help を使ってね。自分の PC の Linux や Mac では man が使えるので、そのときは思い出して。

08 / 08

さあ、打ってみよう

調べる手順は、だいたいこの順だよ。

1. which コマンド … 入っているか、どこにあるか
2. コマンド --help … 使い方と旗の一覧
3. busybox --list | grep 名前 … そもそも使えるのか

この3つが打てれば、知らないコマンドに出会っても止まらずに進めるよ。調べ方を知っていることが、覚えていることより強いんだ。