[Linux] プリンタ管理_lpr, lpq, lprm, lp, lpstat, cancel

# 概要

| 機能       | BSD系   | System V系 (CUPS標準) |
| -------- | ------ | ------------------ |
| 印刷       | `lpr`  | `lp`               |
| 印刷ジョブ確認  | `lpq`  | `lpstat`           |
| 印刷ジョブの削除 | `lprm` | `cancel`           |

# lpr コマンド

```bash
$ lpr [オプション] [ファイル名]
```

| オプション   | 由来                   | 説明                             |
| :------ | :------------------- | :----------------------------- |
| default | line printer request | デフォルトプリンタに印刷ジョブを送信する           |
| `-#`    | number of copies     | 印刷部数を指定する<br>例：`-#3` → 3部印刷    |
| `-P`    | printer              | 印刷先プリンタ名を指定<br>例：`-P printer1` |



# lpq コマンド

```bash
$ lpq [オプション]
```

| オプション   | 由来                 | 説明                               |
| :------ | :----------------- | :------------------------------- |
| default | line printer queue | 現在の印刷キューの状態を表示                   |
| `-P`    | printer            | 確認したいプリンタ名を指定<br>例：`-P printer1` |



# lprm コマンド

```bash
$ lprm [オプション] [ジョブ番号]
```

| オプション   | 由来                  | 説明                                            |
| :------ | :------------------ | :-------------------------------------------- |
| default | line printer remove | 自分の印刷ジョブを削除する                                 |
| `-P`    | printer             | ジョブを削除したいプリンタ名を指定<br>例：`-P printer1`          |
| `-`     | all                 | 自分のすべての印刷ジョブを削除する<br>例：`lprm -` → 全ジョブ一括キャンセル |


# lp コマンド

```bash
$ lp [オプション] [ファイル名]
```

| オプション   | 由来               | 説明                                                                       |
| :------ | :--------------- | :----------------------------------------------------------------------- |
| default | line printer     | デフォルトプリンタに印刷ジョブを送信                                                       |
| `-n`    | number of copies | 印刷部数を指定<br>例：`-n 3` → 3部印刷                                               |
| `-d`    | destination      | 印刷先プリンタを指定<br>例：`-d printer1`                                            |


# lpstat コマンド

```bash
$ lpstat [オプション]
```

| オプション   | 由来                  | 説明                                          |
| :------ | :------------------ | :------------------------------------------ |
| default | line printer status | 現在の印刷ジョブやプリンタの状態を表示                         |
| `-a`    | accepting jobs      | すべてのプリンタのジョブ受付状態を表示<br>例：どのプリンタが有効かを確認      |
| `-p`    | printers            | プリンタの状態を表示<br>例：有効か、アイドルか、エラーかなど            |
| `-d`    | default             | デフォルトプリンタの名前を表示                             |



# cancel コマンド

```bash
$ cancel [オプション] [ジョブIDまたはプリンタ名]
```

| オプション     | 由来         | 説明                                                                             |
| :-------- | :--------- | :----------------------------------------------------------------------------- |
| default   | cancel job | 指定した印刷ジョブをキャンセルする                                                              |
| `-a`      | all jobs   | すべてのジョブをキャンセルする<br>例：`cancel -a printer1` → `printer1` のすべてのジョブを削除 |
| `-u ユーザ名` | user jobs  | 特定のユーザーのジョブをキャンセル（CUPSの設定により制限あり）                                              |


# Ping-t
- [4704_lpr](https://mondai.ping-t.com/question_subjects/32/question_sessions/33867186/progressing_questions/518471899)
- [4729_lpr](https://mondai.ping-t.com/question_subjects/32/question_sessions/33867186/progressing_questions/518471889)
- [4847_lpr -#](https://mondai.ping-t.com/question_subjects/32/question_sessions/33867186/progressing_questions/518471888)
- [4879_lprm -P, -](https://mondai.ping-t.com/question_subjects/32/question_sessions/34000185/progressing_questions/520498144)
- [5130_lp](https://mondai.ping-t.com/question_subjects/32/question_sessions/33867186/progressing_questions/518471902)
- [5131_cancel](https://mondai.ping-t.com/question_subjects/32/question_sessions/33867186/progressing_questions/518471901)