プログラミングを始める前に

プログラミングのレッスンなので、はじめからプログラミング言語について学んでいくと思っていたかもしれませんが、実はそれより先に身につけておくべきスキルがあります。

それが今回扱う UNIX コマンド です。

これを身につけないでも、まぁなんとかなるでしょ!と思っている方が初心者には多いのですが、自分の PC に開発環境を整えるときや、実際にサービスを運用するときなど、使う頻度がかなり高くなるスキルですし、何よりも調べ物をしていても「身につけていて当たり前」のように扱われるため、一番はじめに扱うことにしました。

具体的には、黒い画面や白い画面に、コマンドを入力して操作しているあれです。

この画面を使って、PCを操作する方法を覚えていこう!というのが今回のレッスンの目的です。

まとめ
  • UNIX コマンドは身につけていて当たり前のように扱われるので、はじめにしっかり押さえておこう!

PC の操作方法は GUI と CLI の 2 種類がある

PC の操作は大きく 2 つに分けられます。

GUI 操作

普段、わたしたちが、パソコンを触るとき、PC の画面上のボタンをクリックしたりして操作することがほとんどかと思います。

こうした視覚的な画面を通じて操作することを GUI(Graphic User Interface)操作と呼びます。

GUI の例

Mac を例にとると、こういったボタンをクリックしてアプリを起動し、起動したあとも視覚的な情報から操作することができます。

PC の仕組みについて詳しくなくても、感覚的に PC を操作できるのが特徴です。

CLI 操作

対して、文字入力によって PC を操作するのが CLI(Command Line Interface)です。

普段、わたしたちが PC のアイコンをクリックしたりして画面上で操作していることを、画面ではなく、文字(コマンド)を通じて操作します。

CLI は GUI と比べて軽量であり、プログラムを通じて呼び出しがしやすい特徴があります。

実際、多くの Webアプリを公開しているサーバーは、GUI の機能をそもそも持っていないものが大半で、CLI 操作ができないと PC 操作が実質できません。

CLI の例

大抵黒い画面や白い画面で操作します。GUI のように、ユーザーにわかりやすい表示になっていることはありません。

まとめ
  • GUI は視覚的操作。多くのユーザーにとってわかりやすい。
  • CLI は文字列でのコマンド操作。多くのユーザーにとってわかりにくいが、プログラム向き。

UNIX コマンドとは

mac の CLI で使うコマンドを UNIX コマンドと言います。

Linux は無料で使える OS として、世界中で使われている OS ですが、Linux のもととなっているのが Unix です。

多くの Webサーバーは、「無料で使える」という理由から、Linux をベースに構築されていることがほとんどなので、Linux のコマンド操作を覚えることが必要になるわけですが、もとが Unix なので、mac の CLI コマンドを身につけておけば、Linux の操作で困ることはほとんどありません。

Windows は歴史がかなり異なるので、コマンドもあまり似ていません。別で覚える必要があります。

まとめ
  • mac で Unix コマンドを身につけておけば、Linux コマンドも使えるようになるので一石二鳥!

iTerm2 のインストール

mac には、デフォルトで「ターミナル」というアプリケーションが入っているのですが、それよりも少し使いやすいソフトを導入してしまいましょう。以下のリンクを開き、ソフトのダウンロードとインストールを済ませてください。

ターミナルを起動しよう

早速ですが、コマンドを実際に入力してコマンド入力に慣れていきましょう。

まずは、先ほど導入した「iTerm」というアプリを起動します。

Lauchpad をクリック

ターミナルをクリック

これで iTerm2 が開くと思います。

覚えておきたい Unix コマンド

これからコマンドを紹介していきますが、テキストを読むだけでなく、実際にコマンドを打って動作を確認しながら進めてください。

色々と紹介していますが、この講座を初めて勉強している方は、「覚えておかないと死ぬコマンド」は確実に使えるようにして、後のコマンドは慣れてきたら都度覚えていくといいです。

Take off Rails でも、Unix コマンドは今後たくさん触ることになるので、出てきたタイミングで調べたりこの記事を読み直したりしながら身につけていきましょう。

覚えておかないと死ぬコマンド

たった2つです。

使用頻度が他のコマンドと比較すると比べ物にならないくらい多いので、絶対身につけてください。というか、覚えようとしなくても、使っているといつの間にか覚えているかもですが笑

ls list 。

ディレクトリ(フォルダ)配下のファイルを一覧表示するコマンド

cd change directory 。

作業ディレクトリ(作業フォルダ)を移動するコマンド

 

覚えておきたいコマンド

 

pwd print working directory 。現在の作業ディレクトリ(作業フォルダ)の絶対パスを表示するコマンド
mkdir make directory 。フォルダを作成するコマンド。
touch touch 。ファイルの最終更新日を変更するコマンド。ファイルが存在しない場合は新規作成する。
cp copy 。ファイルやフォルダをコピーするコマンド
mv move 。ファイルやフォルダを移動するコマンド
rm remove 。ファイルやフォルダを削除するコマンド。
open ファイルやフォルダを紐づいているツールによって開くコマンド。mac だと Finder でフォルダを開きたいときによく使う。
exit exit 。ターミナルを終了するコマンド。
cat ファイルの内容をターミナルに出力するコマンド。先頭だけ出力させたい場合は head 、最後だけ出力したい場合は tail というコマンドがある。
man manual 。コマンドのマニュアルを表示するコマンド

※ 絶対パスは、最上位の階層からの目的のファイルやフォルダまでの道筋を省略せずに表記する方式のことを指します。

このレッスンのまとめ

今回のレッスンでは、基本的な UNIX コマンドを紹介しました。

かなり数を絞って紹介しているので、もちろんこれ以外にも覚えたほうがいいコマンドはあるのですが、はじめから全部身につけようとするのではなくて、使えるものを少しずつ増やしていって、わからないコマンドが出たら都度調べる方向でいきましょう。

コマンド操作の基本はこれでわかると思うので、今後は知らないコマンドが出てきたら man コマンドでマニュアルを確認したり、単にググって調べれば解決できるようになったはずです。

「調べればわかる」は大きな成長です!

この調子で次のレッスンに進んでいきましょう ^^)

まとめ
  • Unix コマンドは、身につけておいて当たり前のように扱われるので、基本的なコマンドははじめに身につけておこう。
  • 知らないコマンドが出てきたらググって調べれば OK!

次の記事