ターミナルを使ってみよう! ~IT系の仕事を全く分からない人がプログラミング出来るまで ~
前回は!
前回はAWSでインスタンスを立ててみました。無事インスタンスを立てれましたでしょうか?
今回は、インスタンスで操作するためにターミナルの使い方に慣れましょう!
ターミナルとは?
ターミナルってご存知しょうか?
単純なイメージだと黒い画面です!
ターミナルでどういったことができるかというと
- コマンドでPCを直接命令して動かせる
- プログラミングがしやすい
- 動作が早い(画面を描画する必要がないため)
のようなことができます。
コマンドを使ってPCを直接触れることが出来る故、間違ったコマンドを打つとPCが動作しなくなるといった深刻な自体も起きますので、コマンドを打った後の動作を考えてからコマンドを打つ癖を身につけてください。
プログラミングをするときもターミナルを使いますので、最初は慣れないと思いますが、一つずつコマンドを使って慣れていきましょう。
ターミナルを使ってみよう
いきなりですが、MacとWindowsではターミナルの扱い方が完全に変わります。Webとかで乗っているUNIX コマンドと呼ばれる便利なコマンドがWindowsだと違うコマンドに置き換わっている可能性がありますので、どのコマンドと対応しているか注意してください。
個人的には開発をするにはMacの方がやりやすいのが本音です。理由としてはUNIXコマンドが最初から使えるからです。それぐらいUNIXコマンドは便利なので、よく使うコマンドは是非1つずつ覚えていきましょう。
Mac向け
まず、個人的には以下のアプリを使用するのがオススメです。画面を縦に分けれたり、タブで画面をまとめたりターミナルを便利に使う機能がいっぱいありますので、是非ダウンロードして使ってみてください!
Windows向け
windowsではmsdosというターミナルはUnixコマンドが使えない上、貧弱ですので、以下のソフトのようなUnixコマンドが使えるターミナルソフトを使用しましょう。他にもいっぱいあると思いますが、UNIXコマンドさえ叩ければなんでもいいです。
無事インストールできましたでしょうか?
ディレクトリの中身をみよう!
コンピューターって意識したことないかもしれませんが、実は階層構造になっています。フォルダのなかにフォルダがあり、さらにフォルダがあり。。みたいな、一つのでかいフォルダの中を移動しているイメージだと思ってください!
Windowsではフォルダとよばれているファイルのことを、ディレクトリと呼ぶことがあります。エンジニアはディレクトリの表現をしていますので、覚えましょう!
先ほど大きなディレクトリの中にさらにディレクトリがあるという話をしましたが、一番元になっているディレクトリをルートディレクトリとよんでいます。ルートディレクトリの直下にはPCの動作に関わる大事なディレクトリが入っています。
ターミナルを使って、ルートディレクトリに何が入っているかみてみましょう!
以下のコマンドを打ってみてください!
ls /
ls というコマンドはめちゃくちゃ使います!
「list segments」という言葉の略でディレクトリの中身のファイルに何があるかを見るコマンドです、
/ というのはルートディレクトリのことを表しています。ただのスラッシュではないですね。
ということはコマンドの意味としては、「ルートディレクトリの中身を見せて」になります。実際に叩いてみましょう。
$ ls /
Applications Users dev net tmp
Library Volumes etc opt usr
Network bin home private var
System cores installer.failurerequests sbin
$マークは自分がコマンドを打った行になります。
コマンドを打つときは無視してください。
下に出てきたいろいろなファイル名がルートディレクトリ直下にあるディレクトリになります。
いっぱい出てきましたが、いじってはいけないディレクトリもありますのでそっとしておきましょう。
ディレクトリを移動しよう!
先ほどは、ディレクトリの中身を見ました。次にディレクトリを移動してみましょう。
で、今自分が存在しているディレクトリをカレントディレクトリといいます。
カレントディレクトリの中身を練習で見てみましょう。
$ ls ./
lsは先ほどのコマンド ./ はカレントディレクトリのことを表しています。
これも絶対覚えてくださいね!
もう一つ覚えて欲しいのがパスという概念です。ディレクトリのがどこの階層にいるか表す住所と覚えてください。
パスを見るとカレントディレクトリがどこのディレクトリと関係しているか一目でわかります。カレントディレクトリのパスを調べてみましょう。
$ pwd
/Users/yumatsuo
pwd 「Present Working Directory」とよばれる今いるディレクトリのパスを表示するコマンドです。自分がどこのディレクトリにいるかわからなくなったら打ってみてください。
/Users/yumatsuo
pwdで出てきたパスをみましょう。
先頭の / はルートディレクトリのことです。
このパスは ルートディレクトリの直下のUsersというディレクトリの中のyumatsuoというディレクトリの中だよということを表しています。
/ 区切りでみるとどのディレクトリかわかりやすいかと!
そして、pwdで表示したパスを絶対パスと呼びます。
ルートディレクトリから辿ったディレクトリのパスを絶対パスと呼んでいます。
もう一つのパスの表現方法は相対パスと呼ばれるものです。
カレントディレクトリから、該当するディレクトリまでの経路になります。
例えばyumatsuoの上階層ののUsersディレクトリってどう表されるのでしょうか?
ターミナル上では以下のように表しています。
../
カレントディレクトリに. を一つ追加したものです。カレントディレクトリの一階層上を表しています。これも絶対理解してください!
さて、パスの話をしていましたが、ディレクトリ間を移動してみましょう!
# カレントディレクトリのパス(絶対パス)
$ pwd
/Users/yumatsuo
# 一個上の階層のディレクトリに移動(相対パス)
$ cd ../
# 移動後のカレントディレクトリのパスが変わっていることの確認
$ pwd
/Users
ディレクトリを移動するコマンドは cd 「change directory」というコマンドです。死ぬほど打つコマンドです。絶対覚えましょう。
上のコマンドの履歴の解説です。
1. カレントディレクトリをpwdでパスを表示してみました。
2. 1個上の階層の「Users」ディレクトリに入るため「cd ../」を打ちました。
3. カレントディレクトリが「Users」に変わっているので、ディレクトリを移動できました。
なんでもそうですが、スタート地点が欲しいですよね。作業を開始するスタート地点のディレクトリをホームディレクトリと呼んでいます。ディレクトリを移動したあと、ホームディレクトリに戻る癖をつけましょう!
ホームディレクトリは ~ チルダと呼ばれるニョロニョロみたいな記号で表されます。
先ほど移動したディレクトリからホームディレクトリに戻ってきましょう。
# さっき移動したディレクトリ
$ pwd
/Users
# ホームディレクトリに移動
$ cd ~
# ホームディレクトリに戻ってこれました
$ pwd
/Users/yumatsuo
さて、ホームディレクトリに戻ってきました。先ほどから何回も登場している「/Users/yumatsuo」というのは、ホームディレクトリだとわかると思います。
まとめ
今回はターミナルを使って、コマンドを叩く練習をしてみました。慣れないかもしれませんが、コマンドを打つ感覚がわかればいろんな操作ができますので、是非いろんなディレクトリを移動する練習をしてみてください!
次回は!
次回は、ターミナルを使って、AWSのインスタンスにsshで遠隔操作したいと思います!
この記事が気に入ったらサポートをしてみませんか?