コマンドラインは開発をする上で必須のツールです。
コマンドと呼ばれる命令を使うことで、コンピュータに様々なプログラムを実行させることができます。
コマンドラインとは、普段パソコンをGUI(Graphical User Interface)で操作をするのに対して、CUI(Character-based User Interface)でパソコンを操作するためのものです。Macでは、Terminalというアプリがデフォルトでインストールされていて、そこにコマンドを書いて操作することができます。
Anki
Ankiを使って復習できるようにしました。よかったら試してみてください。
Anki Deck
ファイルの作成
ファイルを作成するには、touch
コマンドを使います。
touch ファイル名
と入力して実行することで、空のファイルを作成することができます。
コマンドは入力した後にEnterキーを押すことによって、実行することができます。
~$ touch sample.txt
と入力して、Enterキーを押すとsample.txt
ファイルが作成されます。行頭の~$
は、初めから入力されているので、入力する必要はありません。
ファイルの中身を表示する
cat
コマンドでファイルの中身を表示することができます。
cat
コマンドはcat ファイル名
と入力することで使うことができます。
補完機能
コマンドラインには補完機能があります。ファイル名やフォルダ名を入力するときにファイル名の入力途中にTabキーを押すことで、残りのファイル名を補完してくれる機能です。
~$ cat sample.txt
catコマンドはファイルの中身を
表示するコマンドです。
ここにファイルの内容が表示されます。
ディレクトリを作成する
コマンドラインではフォルダをディレクトリと呼びます。
ディレクトリを作成するには、mkdir
コマンドを使います。
mkdir
コマンドはmkdir ディレクトリ名
と入力することで使うことができます。
~$ mkdir sample
mkdir -p
とp
オプションを使うと一気に中の階層のディレクトリまで作ることができます。
~$ mkdir -p sample/css
sample
ディレクトリが作られ、その中にcss
ディレクトリが作られます。
ディレクトリの移動
ディレクトリを移動するためにはcd
コマンドを使います。
cd ディレクトリ名
とすることで、指定したディレクトリに移動することができます。
$
の左にはカレントディレクトリが表示されています。
~$ cd sample
カレントディレクトリの確認
1番親のディレクトリにルートディレクトリがあります。ルートディレクトリは/
で表されます。
pwd
コマンドを実行すると、ルートディレクトリからカレントディレクトリまでの階層が全て表示されます。
~$ pwd
/home/sample
ディレクトリの中身を表示する
ディレクトリの中身を確認するには、ls
コマンドを使います。
~$ ls
sample.txt sample
1つ親のディレクトリ
1つ親のディレクトリに移動したい場合のコマンドはcd ..
を実行する。
~$ cd ..
ホームディレクトリ
cdコマンドでは、ディレクトリを指定せずにcd
のみで実行すると、ホームディレクトリに移動することができます。
~$ cd
ファイル・ディレクトリを移動させる/変更する
ファイルを移動させる
ファイルを移動させるには、mv
コマンドを使います。mv ファイル名 ディレクトリ名
とすることで指定したディレクトリにファイルを移動させることができます。
~$ mv sample.txt sample
ディレクトリごと移動させる
mv ディレクトリ名 ディレクトリ名
とすることで指定したディレクトリにディレクトリごと移動させることができます。
ファイル名・ディレクトリ名を変更する
mv ファイル名 新しいファイル名
とすることでファイル名を、mv ディレクトリ名 新しいディレクトリ名
とすることでディレクトリ名を変更できます。
~$ mv sample.txt new.txt
~$ mv sample new
ファイル・ディレクトリのコピー
ファイルのコピー
cp コピーするファイル名 新しいファイル名
とすることでコピーすることができます。
~$ cp new.txt copy.txt
ディレクトリのコピー
cp -r コピーするディレクトリ名 新しいディレクトリ名
とすることでコピーすることができます。
~$ cp -r new copy
ファイル・ディレクトリの削除
ファイルの削除
rm ファイル名
とすることで削除できます。
~$ rm copy.txt
ディレクトリの削除
rm ディレクトリ名
とすることで削除できます。
~$ rm -r copy
コマンドの履歴
コマンドラインでは、過去に実行したコマンドを上矢印キー↑
で入力することができます。
rmdir ディレクトリ名
でも削除できますが、中にファイルが入っているとできません。中身が空の状態で、削除することができます。
以下編集中
日時を表示する
date
を使うと日時を表示できます。
~$ date
カレンダーを表示する
cal
を使うとカレンダーを表示できます。
~$ cal
コマンドを実行しない
Ctrl
+ C
でコマンドを実行せずに次のプロンプトに移ることができます。
~$ cal ^c
~$
コマンドをクリア
Ctrl
+ U
でコマンドをクリアできます。
~$
画面全体をクリアする
clear
+ Enter
または、Ctrl
+ L
で画面全体をクリアできます。
~$
ルートディレクトリに移動する
cd /
とするとルートディレクトリに移動できます。
~$ cd /
/$
etcディレクトリに移動する
et
と打った後にtab
キーを押すと、etc
と補完してくれます。他のディレクトリやファイル名でもすでにその階層に存在しているものは、tab
キーの補完が効きます。打ち間違えの回避、時間短縮になるのでぜひ活用してみましょう!
/$ cd /etc
/etc$
一覧を表示する
cd /
を打って、tab
キーを2回押すと一覧が表示されます。その階層のディレクトリやファイルを確認するのに便利です。ls
キーでも確認することができますが、状況によって使い分けるといいと思います。
homeからetcに移動する
../../
で2つ上の階層に行って、etc
で一つ下の階層のetc
ディレクトリに移動する。../
は、相対パスで、一つ上の階層にいくときに使います。直接etc
などディレクトリを入力すると一つ下のその名前のディレクトリに移動することができます。
~$ cd ../../etc
/etc$
隠しファイルを表示する
ls -a
とすると.
から始まる隠しファイルを表示することができます。
~$ ls -a
ls -al
とするとより詳細な情報が表示できます。順不同で、続けて描いても描かなくてもいいので、ls -la
、ls -l -a
でも同じ結果になります。
~$ ls -al
ls -al /etc/
とするとetc
ディレクトリの詳細な情報を見ることができます。
~$ ls -al /etc/
ls
のオプションを表示する
ls --help
とするとls
のオプションを一覧で確認することができます。
~$ ls --help
ls -alS
とするとファイルのサイズ順に並べて表示することができます。
~$ls -alS
マニュアルを表示する
man ls
とするとls
コマンドについての詳細な説明を表示することができます。space
キーで次のページへ、q
キーで終了させることができます。
~$ man ls
ワイルドカードを使う
ls -l *.conf
とすると.conf
を含むファイルのみを表示させることができます。
~$ ls -l *.conf
ls -l s?????
とするとs
で始まる6文字のファイルを表示させることができます。
~$ ls -l s?????
ls -l [ps]?????
とするとp
かs
で始まる6文字のファイルを表示させることができます。
~$ ls -l [ps]?????
ls -l [f-h]*
とするとf
,g
,h
で始まるファイルを表示させることができます。
~$ ls -l [f-h]*
ls -l {sh,ho}*
とするとsh
かho
で始まるファイルを表示させることができます。
~$ ls -l {sh,ho}*
シンボリックリンクを作る
ln -s
を使うとシンボリックリンクを作ることができます。
~$ mkdir -p mysite/css/common
として、複数階層のディレクトリを作った場合、毎回一番下の階層にアクセスするのは大変です。そこで、
~$ ln -s mysite/css/common mycommon
とすることで、mycommon
というシンボリックリンクを作ります。
~$ ls -l
するとmycommon
が作られていることがわかります。
これで、mysite/css/common
の中にcommon.css
ファイルを作る場合、
~$ touch mycommon/common.css
とすれば、mysite/css/common
の中にcommon.css
ファイルが作られます。
シンボリックリンクを削除する場合は、通常通りrm mycommon
として消すことができます。
私は下記のProgateとdotinstallというサイトで、基礎を勉強しました。この記事では、コマンドラインの基本的な記法を紹介したいと思います。
プロゲートでは、基本的なコマンドを勉強することができます。
ドットインストールでは、さらに詳しく勉強できます。
最初にプロゲートでコマンドに慣れてから、ドットインストールで勉強することをお勧めします。