こんにちは、フルスタックエンジニアのryuです。
Linuxのコマンドを身につけたいけれど、参考書を読んでもなかなか覚えられない。 コマンド一覧を見ているだけでは、実際の場面で何を入力すればよいのかわからない。
そんなお悩みはありませんか?
Linuxコマンドは、名前と意味を暗記するだけでは身につきにくいものです。実際にファイルを作り、検索し、表示結果を確認しながら覚える必要があります。
そのようなお悩みを解決するために、Linuxコマンド100本ノックを作成しました。Linuxコマンドの練習問題を100問解きながら、Linuxコマンドを身につけていきます。
エンジニアとして10年以上仕事をしてきましたが、Linux操作が上達する人には共通点があります。わからないコマンドを調べるだけで終わらず、手元の環境で実行して結果を確認しています。
この記事では、Linuxコマンド100本ノックの内容、学習の進め方、どのような力が身につくのかを初心者向けに解説します。
Linuxコマンド100本ノックを作成しました¶
Linuxコマンド100本ノックは、問題を読んで終わる教材ではありません。
ブラウザ上のLinuxシミュレーターを操作し、自分で答えを考えてから解説を確認する実践型の教材です。
以下のような人はぜひ、ご覧ください。
- Linuxのコマンドを身につけたい
- Linuxを使いこなせるようになりたい
- Linuxを実務で使う
Linuxコマンド100本ノックの流れ¶
Linuxコマンド100本ノックは、
問題 → シミュレーターで実践 → 解説
の流れで行います。
例えば、以下のような問題が出題されます。
例題
リダイレクト演算子を使って、標準出力された「test」という文字列をtest.txtに格納してください。その後、test.txtの中身を確認してください。
この問題に対して、Linuxのシミュレーターで実践を行います。
Linuxシミュレーターで実践完了後、解説を確認します。
解説には、どのようにコマンドを入力したら良いかなどの手順が記載されています。

答えだけを表示するのではなく、なぜそのコマンドを使うのかも確認できます。入力したコマンドが間違っていた場合は、解説と比較しながら原因を探してください。
ブラウザだけでLinuxコマンドを練習できる¶
Linuxを学び始めるとき、最初の壁になりやすいのが環境構築です。
VirtualBoxへLinuxをインストールしたり、クラウドサーバーを用意したりする前に、設定作業でつまずいてしまう方もいます。
Linuxコマンド100本ノックは、ブラウザからシミュレーターを開いて練習できます。手元のパソコンへLinuxをインストールしなくても、基本的なコマンド操作を始められます。
環境構築が不要だからこそ、学習を始めた日にすぐコマンドを入力できます。Linuxを触ったことがない方にとっても、最初の練習場所として使いやすい構成です。
Linuxコマンド100本ノックでは何を学べるのか¶
100問は、単にコマンド名を当てるクイズではありません。
ファイルやディレクトリを操作し、表示された結果を確認しながら、複数のコマンドを使い分ける力を身につけます。
ファイルとディレクトリを操作する¶
Linuxを使うなら、ファイルとディレクトリの操作は避けて通れません。
pwdで現在地を確認し、lsで中身を表示し、cdで移動する流れは、ほぼすべての作業の基本になります。
pwd
ls -la
cd /var/log
さらに、touch、mkdir、cp、mv、rmなどを使い、ファイルの作成・コピー・移動・削除も練習します。
ただし、削除コマンドは実行後に元へ戻せない場合があります。練習環境で安全に試し、対象を確認してからEnterを押す癖を身につけてください。
ファイルの中身を表示して検索する¶
実務では、設定ファイルやログファイルの中から必要な情報を探す場面が多くあります。
catですべて表示するだけでなく、head、tail、grepなどを使い分けます。
grep "error" application.log
このコマンドは、application.logの中からerrorを含む行を検索します。
単体のコマンドだけでなく、どのような目的で使うのかを意識すると覚えやすくなります。
【関連記事】grepコマンドの使い方|文字列検索を初心者向けに解説
リダイレクトとパイプを使う¶
Linuxでは、コマンドの出力をファイルへ保存したり、別のコマンドへ渡したりできます。
この仕組みを理解すると、複数のコマンドを組み合わせた処理ができるようになります。
echo "test" > test.txt
cat test.txt
>は標準出力をファイルへ書き込みます。すでにファイルが存在する場合は内容を上書きするため、実行前に注意してください。
次のように、パイプでlsの出力をgrepへ渡すこともできます。
ls -1 | grep "test"
一つひとつのコマンドは簡単でも、組み合わせるとできることが大きく増えます。
【関連記事】標準入力・標準出力とは?リダイレクトとパイプを解説
アクセス権やユーザーの考え方を学ぶ¶
Linuxでは、誰がファイルを読めるのか、書き換えられるのか、実行できるのかをアクセス権で管理します。
ls -lの結果を見て、所有者・グループ・その他のユーザーの権限を読み取る練習も重要です。
ls -l sample.sh
chmod u+x sample.sh
アクセス権を理解しないままchmod 777を使うと、必要以上に広い権限を与えてしまいます。
コマンドを覚えるだけでなく、変更によって何が許可されるのかまで確認しましょう。
Linuxコマンド100本ノックの例題¶
実際にどのような問題が出るのか、もう少し具体的に見てみましょう。
最初は1つのコマンドで解ける問題から始め、少しずつ複数の操作を組み合わせます。
ファイル名を絞り込む問題¶
Linux100本ノックには、以下のような問題が出題されます。
例題
4つのファイルを作成します。ファイル名は、test1.txt、test2.txt、test3.txt、file1.txtです。その後、testという文字が含まれたファイル名のみを一覧表示してください。
まず、ファイルを作成します。
touch test1.txt test2.txt test3.txt file1.txt
次に、ファイル名を1行ずつ表示し、testを含むものだけを絞り込みます。
ls -1 | grep "test"
結果は次のようになります。
test1.txt
test2.txt
test3.txt
この問題では、touch、ls、grep、パイプの役割をまとめて確認できます。
/etcディレクトリを確認する問題¶
例題
/etcディレクトリ配下のファイルやディレクトリの詳細情報を表示してください。隠しファイルも含めて、更新日時やアクセス権、所有者などの情報を表示してください。
次のように実行できます。
ls -la /etc
-lは詳細表示、-aは.から始まる隠しファイルを含めて表示するオプションです。
なお、ls -lに表示される日時は、通常はファイルの更新日時です。作成日時が必ず表示されるわけではない点には注意してください。
そのほかの問題は、こちらで実施できます。Linuxの実行環境などの準備は不要で簡単に始めることができます。
100本ノックを効果的に進める方法¶
100問あると聞くと、すべて一度に終わらせなければならないと思うかもしれません。
しかし、急いで解説を読み進めるより、自分で考えて入力する時間を作った方が学習効果は高くなります。
まずは解説を見ずに考える¶
問題を読んだら、すぐに答えを開かず、知っているコマンドを組み合わせてみてください。
正解できなくても問題ありません。自分がどこまで理解できているのかを確認することが目的です。
コマンド名を思い出せない場合は、manや--helpを使って調べます。
ls --help
man grep
実務でも、すべてのオプションを暗記しているわけではありません。調べながら正確に操作する力も、Linuxスキルの一部です。
間違えた問題をもう一度解く¶
解説を読んで納得しただけでは、数日後に同じ問題を解けないことがあります。
間違えた問題には印を付け、翌日や数日後にもう一度、解説を見ずに実行しましょう。
私はLinuxを学び始めたころ、コマンド一覧を読むだけではほとんど覚えられませんでした。一方で、自分でディレクトリを作り、移動し、消してしまって作り直した操作は今でも覚えています。
失敗した操作をやり直す経験が、実際の作業で使える記憶につながります。
コマンドの実行結果を説明する¶
コマンドを入力できたら、なぜその結果になったのかを自分の言葉で説明してみてください。
たとえば、ls -laを実行したなら、-lと-aがそれぞれ何を変えたのかを説明します。
説明できない部分があれば、まだ理解が曖昧です。解説へ戻り、オプションを一つずつ確認しましょう。
Linuxコマンドの概要がわからない場合は?¶
Linuxコマンドの概要が分からない場合は、Linuxの入門講座から実施しましょう。Linux入門講座では、コマンドの使い方はもちろん、Linuxの基礎から学習を進めることができます。
Linuxの基礎知識を身につけた状態で、100本ノックをやると効果的です。
Linuxの入門講座はこちらから実施できます。
- 【Linux入門講座1】ディレクトリと相対パス、絶対パス(無料)
- 【Linux入門講座2】ファイルの操作方法(無料)
- 【Linux入門講座3】ファイルのアクセス権限(無料)
- 【Linux入門講座4】ファイルの編集〜vimの使い方をマスターする〜
- 【Linux入門講座5】ユーザーとグループ
- 【Linux入門講座6】ネットワーク
そのほかのLinux講座もあります。詳しくは、こちらのサイトをご覧ください。
関連記事:Linuxのコマンド練習におすすめのInfraAcademy
Linuxコマンドを実務で使う前の注意点¶
100本ノックは、安全な学習環境で試行錯誤するための教材です。
実際のサーバーでは、同じ感覚でコマンドを実行するとサービス停止やデータ削除につながる可能性があります。
削除や上書きの前に対象を確認する¶
rm、mv、cp、>などは、ファイルを削除したり上書きしたりする可能性があります。
まずpwdやlsで場所と対象を確認し、必要なら実行前にバックアップを取ります。
pwd
ls -l target.txt
cp target.txt target.txt.bak
特に本番サーバーでは、コマンドをコピーしてすぐ実行せず、パスやオプションを読み直してください。
sudoをむやみに付けない¶
権限エラーが出たとき、すぐsudoを付ければよいわけではありません。
なぜ権限がないのか、どのユーザーで操作しているのか、変更してよいファイルなのかを確認します。
whoami
id
ls -l target.txt
管理者権限で実行できることと、実行してよいことは別です。
学習環境でコマンドの動きを理解し、本番では影響範囲を確認してから操作する習慣を身につけましょう。
まとめ¶
今回の記事では、Linuxコマンド100本ノックについてご紹介しました。
Linuxコマンドは、一覧を眺めて丸暗記するより、問題に沿って実行し、結果を確認する方が身につきやすくなります。
Linuxコマンド100本ノックでは、ファイル操作、検索、リダイレクト、パイプ、アクセス権などを、ブラウザ上で実践できます。
最初から100問すべてを完璧に解く必要はありません。間違えた問題を繰り返し、コマンドの意味と実行結果を説明できる状態を目指してください。
これからLinuxコマンドを身につけたいと思っている人はぜひやってみてください。InfraAcademyでは、Linuxコマンドだけでなくサーバー構築講座などもあるので、インフラエンジニアになりたい方はぜひお使いください。