ターミナルの出力結果を全てファイルに書き込む

# 活用する場面
- ローカルにない本番環境のファイル（ログなど）の内容を確認したい時


# 手順

### 0. 前提

- 今回は`production.log`のファイルの中身を、`local.log`へと出力する
    - `production.log`は、本番環境などに存在するログファイルという想定
```Desktop/log/production.log
2022-07-07 11:11:47:384 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000001
2022-07-07 11:11:47:478 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000002
2022-07-07 11:11:47:678 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000003
2022-07-07 11:11:47:775 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000004
2022-07-07 11:11:47:878 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000005
2022-07-07 11:11:47:974 sample-batch BATCH  WARN FAILED  : Gmailの送信に失敗しました。 通知ID: 10000006
2022-07-07 11:11:48:080 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000007
2022-07-07 11:11:48:170 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000008
2022-07-07 11:11:48:265 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000009
2022-07-07 11:11:48:368 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000010
2022-07-07 11:11:48:459 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000011
2022-07-07 11:11:48:555 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000012
2022-07-07 11:11:48:649 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000013
2022-07-07 11:11:48:744 sample-batch BATCH  WARN FAILED  : Gmailの送信に成功しました。 通知ID: 10000014
2022-07-07 11:11:48:841 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000015
2022-07-07 11:11:49:058 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000016
```

### 1. ローカルに空のファイルを作成（任意）
```terminal
$ cd ~/Documents/
$ touch local.log
```

### 2. scriptコマンドで、標準出力された結果を反映させたいファイルを指定する

- **1** で作成したファイルを指定

```terminal
$ script /Users/username/Documents/local.log
```

:::note
パス名は基本的にFinderからドラッグ&ドロップ
:::

### 3. 行いたいコマンドを実行
- 今回は本番環境に存在する（という想定の）ファイルの内容を、ローカルに作成したファイルへ出力する
```terminal
$ cd ~/Desktop/log/ # 出力したいファイルが存在するパスまで移動
$ cat production.log # production.log = 「本番環境に存在するファイル」という想定
```

### 4. 指定したファイルに出力された内容が書き込まれていることを確認
```Documents/local.log                                                                                         
2022-07-07 11:11:47:384 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000001
2022-07-07 11:11:47:478 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000002
2022-07-07 11:11:47:678 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000003
2022-07-07 11:11:47:775 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000004
2022-07-07 11:11:47:878 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000005
2022-07-07 11:11:47:974 sample-batch BATCH  WARN FAILED  : Gmailの送信に失敗しました。 通知ID: 10000006
2022-07-07 11:11:48:080 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000007
2022-07-07 11:11:48:170 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000008
2022-07-07 11:11:48:265 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000009
2022-07-07 11:11:48:368 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000010
2022-07-07 11:11:48:459 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000011
2022-07-07 11:11:48:555 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000012
2022-07-07 11:11:48:649 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000013
2022-07-07 11:11:48:744 sample-batch BATCH  WARN FAILED  : Gmailの送信に成功しました。 通知ID: 10000014
2022-07-07 11:11:48:841 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000015
2022-07-07 11:11:49:058 sample-batch BATCH  INFO SUCCESS : Gmailの送信に成功しました。 通知ID: 10000016
```

### 5. 終了する時
- ターミナルで`control + c`