こんにちは!
Co-Labの所長の宇野です。
エンジニア歴は短いですが、短いなりに、勉強したことなどを忘備録的に記事にしてアップしていきたいと思います。
突然ですがターミナルってご存知でしょうか?
Macユーザーなら一度は聞いたことはあるかもしれませんね。
エンジニアにとって業務上必須のアプリケーションですね。
今回は「ターミナル」についての基礎的な部分と、よく使うコマンドご紹介していきたいと思います。
初心者向けなので極力難しい用語などは使わないようにします。
そもそもターミナルって?
みなさんが普段パソコンを使うときは、マウスやトラックパッドを使って目的のフォルダ・ファイルをクリックし、コピーや削除などの操作をしていると思います。
「ターミナル」はそういった操作を「コマンド」と呼ばれる命令文(単語)を使い、文字のみで操作するためのアプリケーションです。(Windowsでいうコマンドプロンプトにあたるアプリケーションです)
ターミナルの起動方法って?
- ⌘ + space でspotlightを開き(もしくはディスプレイの右上の虫眼鏡のマークをクリック)、「ターミナル」と検索する
- Finder → アプリケーションフォルダ → ユーティリティフォルダ → ターミナル
※これからよく使うよって方はDockに入れておくと便利です
初めて「ターミナル」を開くと、白い画面が表示されます。
少し待つと以下のように暗号のような文字が出てきます。
それぞれの暗号の意味は、
- 1行目 → 起動日時
- 2行目の$以前 → 使っているパソコンの名前
- 2行目の$以降 → 現在どこのディレクトリにいるかの位置(ディレクトリ)
になっています。
※「ディレクトリ」とは「フォルダ」と意味合いは同じです
ターミナルをクリックして開いた場合は、このディレクトリから始まることになります。
(Finderを開いてみると、サイドバーに家のマークがついたディレクトリがあると思います。それです。)
2行目の$以降「現在どこのディレクトリにいるかの位置(ディレクトリ)」は、ターミナルを使用する上で非常に重要にです。
基本的に「現在いる位置(ディレクトリ)」の操作することになります。
その中にあるフォルダ・ファイルのコピーや削除、新規作成等の操作を行うので、「現在いる位置(ディレクトリ)」は常に意識するようにしましょう!
コマンドって?
冒頭でも少し触れましたが、全ての操作をテキストで指示を出すための命令文(単語)です。
パソコンに指示を出す際に必ず使います。色々なコマンドがあるので覚えるのが大変ですが、よく使うコマンドは覚えるようにしましょう!
ここからはコマンドを通して、操作方法を説明していきます。
先ほど少し触れましたが、ターミナルでは、「現在いる位置(ディレクトリ)」しか操作できません。
なので操作の流れとしては、
①ターミナルを開く → ②操作したいディレクトリに移動する → ③コピーなどのなんらかの操作をする → ②、③の繰り返しです。
そこで、重要なのが「移動」です。
ここからコマンドを使います!
cd
移動のコマンドです。
※次で詳しく説明します
cd [ファイルまでのパス]
を打ち込みEnterキーで移動します。
例えば、「最初にいたディレクトリ」 内の → 「test」というディレクトリ内の → 「inner_test」というディレクトリに移動したい場合、
cd test/test_inner
と打ち込みます。
※コマンドの後は半角スペースで空けてください
より階層深くに入りたい場合は、ディレクトリ名とディレクトリ名の間に「/」スラッシュを挟むと一気に移動できます。(画像2行目)
パス
「最初にいたディレクトリ」 内の → 「test」というディレクトリ内の → 「inner_test」というディレクトリ」
をパソコンに読み取ってもらうように書いたものを「パス」と言います。
サイトの住所のようなものです。
この辺りを見ておくとなんとなく感じがつかめるかもです。
https://fastcoding.jp/blog/all/frontend/path/
重要なので、しっかり覚えておくようにしましょう!
よく使うコマンドって?
ここからはよく使うコマンドを紹介します。
※コマンドそれぞれに追加機能があり、それらをオプションとしています
cd(change directory)
ディレクトリの移動
cd [ファイルまでのパス]
オプション
../ 1つ上のディレクトリに移動
- 1つ前のディレクトリに移動(戻るボタンのようなもの)
~ (ユーザーのホームディレクトリ) ~からの
何も指定しない ホームディクトリに戻る
ls
ディレクトリ内の表示
ls [ファイルまでのパス]
オプション
-a 隠しファイル表示
-l 詳細表示(パーミッション表示)
※-laで上記二つをまとめて表示
cat
テキストファイルの内容表示・連結
cat [見たいファイル名]
オプション
-n 行番号をつけた状態で表示
pwd(print working directory)
カレントディレクトリ(現在のディレクトリ)のフルパス表示
mkdir(make directory)
ディレクトリの作成・スペース区切りで複数作成可能・スペースを含む場合は””で囲む
mkdir [作成したいディレクトリ名]
オプション
-p パス名形式でディレクトリを作成
chmod(change mode)
パーミッション(権限)の変更
chmod [変更したいパーミッション(数字)] [ファイル名]
オプション
-R ディレクトリ内全てのファイル・ディレクトリに適用
touch
ファイルが存在しない場合新規作成・ファイルの最終アクセス時刻と変更時刻を変更・スペース区切りで複数作成可能
※空ファイルの作成に使用することが多いです。
touch [作成したいファイル名]
オプション
-c ファイルが存在しない場合は新規作成しない
複数ファイル(拡張子が同じ)を作りたい場合→ {}.拡張子
連番を作りたい場合→ {a..r}.拡張子
cp(copy)
オプション
ファイルの複製・パターンマッチング使用可能 *コピー先に同じファイルがあった場合勝手に上書きする
-i 上書き前に確認する y n で返答する
mv(move)
ファイルの移動
mv [変更前のファイル名] [変更後のファイル名]
ファイル名の変更
mv [移動したいファイル・ディレクトリ名] [移動先のディレクトリまでのパス]
オプション
-i 上書きする前に確認する
-n 上書きせず、確認もしない(何もしない)
rm(remove)
ゴミ箱を経由せずにファイルを削除する・元に戻せない
オプション
-i 削除する前に確認
-f 存在しないファイルは無視する
-r ディレクトリとその中身を削除する
慣れないうちは -i オプションを使用して確認を取るようにすると安心です
clear
コマンドに直接入力・画面を綺麗にする(Ctr+l)
vi / vim
テキストの操作・編集
vi [ファイル名]
vimに関しては、独自のコマンドがありますので今回は省かせていただきます。
exit
ターミナルを閉じる
最後に
ここで書かせていただいたこと以外にもたくさんのことができるアプリケーションですので、是非使ってみてください!
使いこなせるようになると作業もとても捗ります。(私はまだ全然使いこなせていないので言える立場じゃありませんが。。。笑)
便利な分、間違った使い方をしてしまうと知らない間に重要なシステムを変更してしまったりと、大変なことになり兼ねないので、扱いには注意して、ちゃんと調べてご活用ください。
参考サイト:
http://topickup.web.fc2.com/linux/command_option.html
https://techacademy.jp/magazine/5155
https://do-zan.com/mac-terminal-command-shortcut/