Linuxのコマンドって何?よく使われるものと、おすすめの勉強方法
エンジニアを目指している人の中には、Linuxの勉強を始めたい、始めたばかりという人も多いのではないでしょうか。
Linuxの学習に取り組む前に、まずはどういった仕組みのものなのかというのを、理解しておいた方が、Linuxの学習に対するハードルの高さが理解できて、学習を始めやすくなるはずです。
そこで今回は、Linux初心者に向けて、Linuxのコマンドの概要やよく使うコマンド、そのコマンドの練習方法などについて解説していきます。
Linuxのコマンドとは?
コマンドは、直訳すると「命令」という意味で、コンピューターに指示を与えるものです。
Linuxは、CUI(キーボードでコマンドを入力し、その結果を受けるスタイル)のOSなので、画面上にコマンドを打ち込んで、必要な操作をコンピューター内に指示を出して操作を進めていきます。
コマンドを打ち込む際はコンピューター上での操作になるので、必然的にGUI(ウィンドウを表示してマウスで操作スタイル)環境の上にCUI環境を用意して、そこで入力していくこととなります。
コンピューター内のアプリケーションに、「端末」あるいは「コマンドプロント」というものがあるので、それを起動させて、そこでコマンドを入力していくことでコンピューター内に指示を出すことが可能です。
始めはコマンドに慣れるのに時間がかかりますが、慣れてくると日常会話をするような感覚で取り組めるようになってくるので、ゆっくりと自分のペースでコマンド入力の仕方を覚えていけば問題ありません。
そもそもLinuxとは?
Linuxは、WindowsやMacなどと同じ、OSの1種となります。
OSは、コンピューター上のすべてのハードウェアを管理するソフトウェアのことです。
OSがあって初めてコンピューター上で様々な操作を行ったり、アプリを起動させたりできるようになります。
Linuxの他のOSと違った特徴としては、オープンソースで自由な改変などが可能で、改変したものをそのまま再配布するのも自由だという点です。
また、多くの人に使われるOSがGUIであるのに対して、LinuxはCUIであるという点が挙げられます。
Linuxは黒い画面に文字を入力して、それだけでハードウェアを動かしていくOSです。
CUIでの操作に慣れておくと、その他のプログラミング言語を学習することに対してのハードルが低くなり、エンジニアとしての道を切り開きやすくなります。
Linuxを通じてエンジニアとして活躍できるように学習に取り組んでいってみてくださいね。
Linuxでよく使用されるコマンドは?
Linuxでよく使用されるコマンドについて、大きく分けて以下の7つに大別できます。
- コマンド入力を楽にする
- ディレクトリの確認
- 階層移動とファイル操作
- テキスト処理
- インストールまわり
- OSまわり
- その他
1つずつ見ていきましょう。
1.コマンド入力を楽にする
コマンド入力を楽にするコマンドとしては、以下の2つが挙げられます。
- Tab補完
- bashショートカット
コマンド入力をすべて手入力ですると苦労するため、「Ctrl+A」や「Ctrl+E」で行頭や行末にカーソルを移動させたり、「Ctrl+U」や「Ctrl+K」で行頭や行末まで削除したりできます。
他にも、「readline」というライブラリが提供するショートカットで、よく使うものがいくつかあるので覚えておくと便利です。
2.ディレクトリの確認
ディレクトリの確認ができるコマンドとしては、以下の3つが挙げられます。
- 「pwd」
- 「Is」
- 「tree」
「pwd」コマンドで今いるディレクトリの絶対パスを表示したり、「Is」コマンドでファイルやディレクトリを表示したりできます。
また、「tree」コマンドでは、ディレクトリ構造の表示が可能です。
「pwd」と「Is」のコマンドは、そのまま使用できますが、「tree」コマンドは使用する前に、別途インストール必要だという点を押さえておいてください。
3.階層移動とファイル操作
ディレクトリの階層移動とファイル操作に関わるコマンドとしては、以下の7つが挙げられます。
- 「cd」
- 「mkdir」
- 「touch」
- 「mv」
- 「cp」
- 「rm」
- 「tar」
ディレクトリの階層移動では「cd」コマンドを入力して行い、ファイルやディレクトリの移動には「mv」あるいは「cp」コマンドで行えます。
上記で紹介している通り、いくつかコマンドの種類があるため、やりやすいものから少しずつ慣れていくといいでしょう。
4.テキスト処理
テキスト処理に関わるコマンドとしては、以下の11のコマンドが挙げられます。
- 「cat」
- 「wc」
- 「head」
- 「tail」
- 「sort」
- 「uniq」
- 「grep」
- 「sed」
- 「awk」
- 「xargs」
- 「less」
「cat」コマンドでファイル内容を結合して出力したり、「wc」コマンドで単語数や行数を数えたりできます。
「head」や「tail」コマンドでは、先頭・末尾からn行を出力することが可能です。
こうした「フィルタコマンド」を用いて、テキスト処理を効率よく行えるコマンド入力も一緒に覚えて使っていきましょう。
5.インストールまわり
インストールまわりのコマンドとしては、以下の10のコマンドが挙げられます。
- 「apt」
- 「yum」
- 「sudo」
- 「su」
- 「echo」
- 「env」
- 「which,whereis」
- 「source」
- 「chmod」
- 「chown」
- 「systemctl」
「apt」や「yum」のコマンドで、ソフトウェアのインストールや更新、アンインストールなどができます。
また「su」コマンドでユーザーの切り替え、「echolコマンドで文字列の表示が可能です。
これらのコマンドを覚えて使用することで、好きなソフトウェアを簡単にLinuxに導入できるようになるため、活用することをおすすめします。
6.OSまわり
OSまわりのコマンドとしては、以下の10のコマンドが挙げられます。
- 「date」
- 「df」
- 「du」
- 「free」
- 「top」
- 「ps」
- 「kill」
- 「pkill」
- 「pgrep」
- 「netstat」
「date」は時刻の確認に使用でき、「top」はCPUやメモリの使用状況を確認する際に使用します。
また、「df」コマンドは、ディスクの空き容量を表示するものです。
データ容量がなくなって、保存ができないという状況が起こらないように、定期的にOSまわりのコマンドを使用して確認するようにしてください。
7.その他
その他のコマンドとしては、以下のようなコマンドが挙げられます。
- 「find」
- 「history」
- 「diff」
- 「jobs」
- 「bg」
- 「fg」
- 「$?」
- 「for」
「jobs」は、実行中のジョブ(コマンドやプログラムの処理のかたまり)を確認したり、「bg」や「fg」で指定したジョブを、バックグラウンドあるいはフォアグラウンドに移したりできるコマンドです。
また、「for」コマンドを使用するとループ処理もできます。
ジョブの処理やバックグラウンドでの操作はわりと使うことが多いので覚えておいて損はないです。
コマンドを練習するための環境設定
Linuxでコマンド入力を練習するには、まずはLinuxを扱える環境を整えることが大事です。
その環境を整えるための方法として、以下の3つが考えられます。
- クラウド上で仮想環境を作る
- コンピューター上で仮想環境を作る
- ターミナルで練習する
1つずつ見ていきましょう。
1.クラウド上で仮想環境を作る
Linuxの環境の1つとして、まずクラウド上で仮想環境を作るという方法が考えられます。
例えば、クラウド開発環境の「IDE」や「PaizaCloud」などで、Linuxの仮想環境を作ることができます。
クラウド上での操作になるため、コンピューター内の容量やメモリを消費することなく扱える点がかなり便利です。
また、ブラウザを開いてすぐ操作できる点がかなり手軽で、OSに左右されない環境であるため、他の人と同じ環境を用意しやすい分、慣れている人からあれこれ質問しながら練習を進めやすいです。
Linuxのコマンドを習得したいという仲間とともに、一緒に練習することもできるので、柔軟にLinuxのコマンドの練習を進めたい人におすすめです。
2.コンピューター上で仮想環境を作る
クラウドだけでなく、純粋にコンピューター上で仮想環境を作る方法もあります。
あまりイメージが湧きにくいかもしれませんが、本来はコンピューター上に1つのOSだけが搭載されています。
しかし、仮想環境をコンピューター上に作ることで、1台のコンピューター上で2つのOSが扱えるような状態を作り上げます。
ただ、クラウドならクラウドそのものを仮想環境と見立てることができますが、コンピューター上だと仮想環境がないままなので、Virtual Boxなどの仮想化ソフトウェアを用意して、仮想環境を作るところから始めないといけない点が、やや不便に感じるかもしれません。
3.ターミナルで練習する
Mac OSの場合だと、ターミナルを用いてコマンドの練習をする方法も考えられます。
クラウドのように誰かと共有して使うことは難しいですが、起動してすぐ使えるという点ではクラウドと同じくらいに扱いやすさに優れています。
Linuxとmac OSのコマンドは似通っている部分が多いので、mac OSのコマンドをある程度知っている人だと入りやすい方法かもしれません。
しかし、すべてが同じというわけではないので、慣れるまでは細かな違いを覚えるのに時間がかかることもあります。
コマンドを練習する方法
コマンドを練習する環境が整ったら、次は具体的にどうやって勉強していくかです。
コマンドを練習する方法として、以下の3つが挙げられます。
- 学習サイトを利用する
- 参考書を使う
- 資格の勉強をする
1つずつ見ていきましょう。
学習サイトを利用する
一番手軽なLinuxのコマンドの練習方法としては、学習サイトを利用する方法が挙げられます。
サービス内容によって有料か無料か変わってきますが、わかりやすく基礎的なものから応用的なものまで解説してくれます。
単に文字を見るだけでなく、動画による解説もあったりして頭の中に残りやすいので、映像とリンクさせた方が覚えやすいという人に特に向いている方法です。
参考書を使う
参考書を使うという方法でもコマンドの練習ができます。
学習サイトだと手順に沿って練習していくだけとなり、人それぞれに合った形での勉強は難しいので、いくらやっても身に付かないという人もいますよね。
しかし、参考書であれば必要なことを都度メモしながら、自分の成長スピードに合わせて勉強ができます。
資格の勉強をする
目標設定がないと努力を続けるのは難しい点を踏まえて、合格したい資格の勉強に取り組むこともLinuxのコマンド練習をする方法として有効です。
単にスキルを身に付けるだけでは、ゴールがない分どこか怠けてしまうという人も少なからずいいますよね。
そんな人には期限付きの1つのゴールが設定できる資格の勉強という方法がおすすめです。
Linuxを学ぶのにおすすめの資格
資格の勉強という方法でLinuxのコマンドを練習したい人に向けて、おすすめの資格をいくつか紹介します。
Linuxを学ぶのにおすすめできる資格は、「LPIC」と「LinuC」です。
LPICとLinuCは、どちらもLinuxの体系的な技術力を証明するIT資格となっています。
受けられる試験のレベルは3段階に分かれていて、レベル2くらいまで合格していれば、十分エンジニアとして仕事ができます。
レベル2までであれば、きちんと必要なところを押さえて勉強すれば十分合格できます。
LPICとLinuCの試験は共通している部分が多いのですが、LPICが国際的な基準で問題が作られているのに対して、LinuCは日本基準で問題が作られているので、出題される問題が若干変わってきます。
どちらを受けるかは、国際的な展開を広げる企業で仕事をするか、国内向けの企業で仕事をするかどうかで判断すると良いかもしれません。
Linuxの需要は今後ますます加速!
最初はLinuxのコマンドに対して難しく感じてしまうかもしれません。
しかし、慣れてしまえばLinuxが扱えるエンジニアとして、今後さらに加速していくクラウドサービスやサーバー関連、IoT技術に至るまで活躍できる場を獲得できるものです。
一昔前と比べても、Linuxが扱えるエンジニアになるために、必要な学習環境が整ってきています。
まずは、気軽に学習サイトや参考書などでLinuxに触れてみましょう。
そして、本格的に学習に取り組んでいきたいとなれば、しっかり目標を設定して試験合格を目指してみてください。
Linuxのコマンドは、独学で身に付けることもできますが、自分だけでは不安だという方向けに、TECHHUBではIT資格専門のeラーニング講座『TECHHUBラーニング』を開講しています。