はじめに
同じ操作でも、入力方法を工夫するだけで作業速度と正確性は大きく向上します。
Tab補完やコマンド履歴を活用すると入力ミスが減り、作業効率も大幅に向上します。
この回では、日常的なCLI操作を効率化する5つの機能を学びます。
- Tab補完
- コマンド履歴
- ワイルドカード(グロブ)
- エイリアス
- 便利なキー操作
1. Tab補完
Tab補完とは、コマンド名やファイル名を途中まで入力し、Tab キーを押すことで残りを自動補完する機能です。
基本的な使い方
例えば Documents ディレクトリへ移動する場合です。
$ cd Doc
(Tabキーを押す)
$ cd Documents/
長いファイル名やディレクトリ名を最後まで入力する必要がなくなります。
候補が複数ある場合
候補が複数ある場合は Tab を2回押します。
$ cd D
(Tabを2回押す)
Desktop/
Documents/
Downloads/
候補一覧が表示されます。

2. コマンド履歴
過去に実行したコマンドは履歴として保存されています。
↑ ↓ キーで呼び出す
| キー | 動作 |
|---|---|
| ↑ | 1つ前のコマンド |
| ↓ | 次のコマンド |
同じコマンドを何度も入力する必要がありません。

history:履歴一覧を表示する
$ history
期待される出力(例):
496 cd Documents
497 ls -l
498 grep "ERROR" access.log
499 cat log.txt
500 history
!!:直前のコマンドを再実行する
$ !!
直前のコマンドが再実行されます。
!番号:特定の履歴を実行する
$ !498
履歴番号498のコマンドを実行します。
Ctrl+R:履歴検索
Ctrl+R を押すと履歴を検索できます。
(reverse-i-search)`grep': grep "ERROR" access.log
長いコマンドを再利用するときに便利です。
3. ワイルドカード(グロブ)
ワイルドカードを使うと複数のファイルをまとめて指定できます。
主なワイルドカード
| 記号 | 意味 | 例 |
|---|---|---|
* | 任意の文字列 | *.txt |
? | 任意の1文字 | test?.log |
[ ] | 候補文字のいずれか | [0-9] |
*.txt の例
$ ls *.txt
期待される出力(例):
memo.txt
note.txt
todo.txt

? の例
$ ls test?.log
期待される出力(例):
test1.log
test2.log
test3.log
? は1文字だけに一致します。
findとの違い
| 機能 | 用途 |
|---|---|
| ワイルドカード | 現在のディレクトリ内でまとめて指定する |
| find | 条件に一致するファイルを探す |
注意:
rm *は非常に危険です。削除前にls *.tmpなどで対象ファイルを確認する習慣を付けましょう。
4. エイリアス
エイリアスは長いコマンドに短い別名を付ける機能です。
エイリアスを作成する
$ alias ll='ls -alF'
以後は ll だけで実行できます。
$ ll
登録済みエイリアスを確認する
$ alias
期待される出力(例):
alias ll='ls -alF'
alias ls='ls --color=auto'
typeで確認する
$ type ll
期待される出力(例):
ll is aliased to 'ls -alF'
注意:エイリアスは現在のターミナルだけで有効です。ターミナルを閉じると消えます。
5. 便利なキー操作
| キー | 動作 |
|---|---|
Ctrl+C | 実行中のコマンドを中断 |
Ctrl+L | 画面をクリア |
Ctrl+A | 行頭へ移動 |
Ctrl+E | 行末へ移動 |
Ctrl+U | カーソルより前を削除 |
特に Ctrl+C は重要です。
終了しないコマンドや停止したい処理があるときに使用します。
演習
課題:補完・履歴・ワイルドカード・エイリアスを使う
練習用ファイルを作成します。
$ cd ~
$ mkdir practice8
$ cd practice8
$ echo "メモ1" > memo.txt
$ echo "メモ2" > note.txt
$ echo "一時ファイル" > work.tmp
Tab補完を試す
$ cd ~
$ cd pr
(Tabキーを押す)
practice8/ が補完されることを確認します。
ワイルドカードを試す
$ ls *.txt
期待される出力(例):
memo.txt
note.txt
履歴を確認する
$ history
続いて ↑ キーで過去のコマンドを呼び出してみます。
エイリアスを作る
$ alias lt='ls -l *.txt'
$ lt
期待される出力(例):
-rw-r--r-- 1 username username 8 May 31 10:00 memo.txt
-rw-r--r-- 1 username username 8 May 31 10:00 note.txt
演習の確認ポイント
- ☐ Tab補完を利用できる
- ☐ ↑ キーで履歴を呼び出せる
- ☐
*.txtを使って複数ファイルを指定できる - ☐ エイリアスを作成できる
- ☐
Ctrl+Cでコマンドを中断できる