コマンドラインを学ぶ


・この記事で学ぶコマンド

$ touch
$ cat
$ mkdir
$ cd
$ pwd
$ ls
$ cd ..
$ mv
$ cp
$ cp -r
$ rm
$ rm -r


・コマンドラインを学ぼう
　コマンドラインは開発をする上で必須のツールです。
　コマンドと呼ばれる命令を使うことで、コンピュータに様々なプログラムを実行させることができます。
　このコースでは、特にUNIXコマンドにおいて開発をする上で最低限必要な基礎知識を学んでいきましょう！

・コマンドラインとは
　コマンドラインとは、
　普段クリックなどをしてコンピューターを操作するのに対して、
　文字だけでコンピューターを操作するためのものです。
　サイトやアプリなどの開発をする上で必須のツールなので、
　しっかり学んでいきましょう。
　このコースで学習するUNIXコマンドは主にLinuxやmacOSで利用されるコマンドの一種です。

・コマンド（命令）
　ターミナルと呼ばれるものにコマンド（命令）を入力することで、
　コンピューターに指示を与えることができます。
　これから、
　実際にどのようなコマンドがあるのかをみていきましょう。
　＄　はコマンドの入力開始点に用意されている記号なので、書く必要はありません。

・ファイルの作成
　ファイルを作成するコマンドをみていきます。
　ファイルを作成するには、　touchコマンドを使います。
　空のファイルを作成することができる。

```command:uniq.git
$ touch ファイル名

$ touch sample.txt

```

コマンドは入力した後にEnterキーを押すことで実行できる。

・ファイルの中身を表示する
　普段エディタを使ってファイルの中身を表示するように、
　コマンドでファイルの中身を表示することができます。
　それには、
　cat コマンドを使います。
　cat コマンドは cat ファイル名　と入力することで使うことができます。

```command:uniq.git
$ cat ファイル名

$ cat sample.txt

```

・コマンドのエラー
　catコマンドを実行した時に、存在しないファイルを指定するとエラーが出力されます。
　エラーが出た場合、実行したコマンドは無効になりますので注意してください。

・補完機能
　コマンドライには、補完機能というものがあります。
　補完機能とは、
　ファイル名やフォルダ名を入力する時にファイル名の入力途中に、
　Tabキーを押すことで、残りのファイル名を保管してくれる機能です。
　これを使うことにより、効率よくなるだけでなく、
　先程のような存在んしないファイル名によるエラーなどを防ぎやすくなります。

・ディレクトリを作成する
　コマンドを用いて、新たにフォルダを作成することもできます。
　また、
　コマンドラインではフォルダをディレクトリと呼びますので、覚えておきましょう、
　ディレクトリを作成するには、mkdirコマンドを使います。
　mkgirコマンドは、
　mkgir ディレクトリ名 と入力することで使うことができます。

```command:uniq.git
$ mkdir ファイル名

$ mkdir sample

```

・ファイル構造
　コマンドラインでは、
　ファイル構造を意識することが大切です。
　ファイル構造とは、
　ディレクトリの中にディレクトリやファイルがあるような、
　枝分かれした構造のことです。

・カレントディレクトリ
　コマンドラインでは、自分が今いるディレクトリというものがあります。
　例えば、
　touchコマンドを実行すると自分が今いるディレクトリ内にファイルが作成されます。
　ですので、
　htmlディレクトリの中に新しいファイルなどを作成したい場合には、
　基本的にhtmlディレクトリに移動してから作成する必要があります。
　また、
　自分が今いるディレクトリをカレントディレクトリと言います。

・cd
　ディレック鳥を移動するためのコマンドをみていきましょう。
　ディレクトリを移動するためにはcdコマンドを使います。
　cd ディレクトリ名　とすることで、指定したディレクトリに移動することができます。

```command:uniq.git
$ cd ファイル名

$ cd sample

```

・ルートディレクトリ
　先ほど見たファイル構造には、一番親のディレクトリにルートディレクトリというものがあります。
　ルートディレクトリは / で表されます。

・カレントディレクトリを確認する
　コマンドラインでは、現在作業しているディレクトリを把握していることが大切です。
　そのため、
　作業中のディレクトリを確認できる pwdコマンドがあります。
　pwdコマンドを実行すると、
　ルートディレクトリからカレントディレクトリまでの階層が全て表示されます。

```command:uniq.git
$ pwd
```

・ディレクトリの中身を表示する
　カレントディレクトリを確認することはできましたが、
　ディレクトリを移動する時などには、ディレクトリの中身を見れた方が便利です。
　ディレクトリの中身を確認するには、 lsコマンドを使います。
　ls と打つだけで、
　カレントディレクトリの中身を確認することができます。

```command:uniq.git
$ ls
```

・lsで表示される範囲
　lsコマンドで確認できるディレクトリとファイルは、
　基本的には1つ子の階層だけですので、覚えておきましょう。

・１つ親のディレクトリ
　cdコマンドでディレクトリを移動する方法を学びましたが、
　１つ親のディレクトリに移動する時に cd 1つ親のディレクトリ名　としても移動できません。
　コマンドラインでは、
　1つ親のディレクトリを .. 　で指定します。
　よって、
　1つ親のディレクトリに移動したい場合のコマンドは、
　cd ..　となります。

```command:uniq.git
$ cd ..
```

・ディレクトリを指定しないcdコマンド
 cdコマンドでは、ディレクトリを指定せずにcdのみで実行すると、
　ホームディレクトリと呼ばれるディレクトリに移動することができます。
　ホームディレクトリは　~ で表されます。

・ホームディレクトリ
　ホームディレクトリは、
　ユーザーが作業をする時に起点にするディレクトリのことを言います。
　ユーザーが起点にするディレクトリのため、簡単に移動できるようになっています。
　
・ファイルやディレクトリを操作しよう
　ここからは、
　ファイルの移動やコピー、削除といった様々な操作をコマンドで行う方法を学びましょう。

・ファイルを移動させる
　ファイルを移動されるコマンドをみていきましょう。
　ファイルを移動させるには、
　mvコマンドを使います。
　mv ファイル名　ディレクトリ名
　とすることで指定したディレクトリにファイルを移動させることができます。

・ディレクトリごと移動させる
　mvコマンドでは、
　ファイル１つずつだけでなくディレクトリごと移動させることでもできます。
　mv ディレクトリ名　移動先のディレクトリ名
　とすることで、そのディレクトリも一緒に移動します。

```command:uniq.git
$ mv 移動させたいファイル名　移動先のディレクトリ名

$ mv 移動させたいディレクトリ名　移動先のディレクトリ名
```

・ファイル名を変更する
　ファイルやディレクトリの移動に使ったmvコマンドは、
　ファイル名を変更することにも使えます。
　mv ファイル名　新しいファイル名
　とすることでファイル名を変更できます。


```command:uniq.git
$ mv ファイル名　新しいファイル名
```

・ファイルのコピー
　ファイルのコピーについてみていきます。
　ファイルをコピーするには　cpコマンドを使います。
　cp コピーするファイル名　　新しいファイル名
　とすることでコピーすることができます。


```command:uniq.git
$ cp コピーするファイル名　新しいファイル名
```

・ディレクトリのコピー
　cpコマンドでは　-r をつけることで、ファイルだけでなくディレクトリもコピーすることができます。
　cp -r コピーするディレクトリ名　新しいディレクトリ名
　とすることでコピーできます。

```command:uniq.git
$ cp -r コピーするディレクトリ名　新しいディレクトリ名
```

・ファイルの削除
　ファイルの削除についてみていきます。
　ファイルを削除するには
　rm　ファイル名
　とるすることで削除できます。

```command:uniq.git
$ rm ファイル名
```

・ディレクトリの削除
　rmコマンドは、　-r をつけることでディレクトリも削除することができます。
　rm -r ディレクトリ　とすることでディレクトリを削除できます。
　また、
　cpと同様に -r　を付け忘れるとエラーとなるので注意しましょう。


```command:uniq.git
$ rm -r ファイル名
```

・コマンドの履歴
　コマンドラインでは、
　過去に実行したコマンドを上矢印キー↑で入力することができます。



参考
https://prog-8.com/