パソコンで文章を書いたり画像編集をしたりしているとき、「元に戻す(Undo)」と「やり直す(Redo)」の操作に助けられた経験は誰にでもあるはずです。
しかし、「どっちが元に戻すで、どっちが進める操作だっけ?」「ソフトによってRedoのショートカットキーが違うのはなぜ?」「基本情報技術者試験やデータベースで出てくるUndo/Redoログって何?」といった疑問を抱く方も多いのではないでしょうか。
本記事では、UndoとRedoの根本的な違いを日常のPC操作からIT・データベースの専門的な仕組みまで、初心者にもわかりやすく徹底解説します。
この記事のポイント
- Undo(アンドゥ)は「直前の操作を取り消して過去の状態に戻す」操作(Ctrl + Z / Cmd + Z)
- Redo(リドゥ)は「Undoで取り消した操作を履歴に基づいて再適用する」操作(Ctrl + Y または Ctrl + Shift + Z / Cmd + Shift + Z)
- 英語の接頭辞「Un-(反対・取り消し・解除)」と「Re-(再び)」の意味から直感的に理解できる
- データベースでは、 Redoログ(変更を再現) によってロールフォワードを行い、 Undo情報(変更前の状態) によって未コミットの変更をロールバックする
UndoとRedoの根本的な違い【一目でわかる比較】
UndoとRedoの最も本質的な違いは、 「操作の履歴をどの方向に移動するか」 にあります。
- Undo(元に戻す):直前に行った変更をキャンセルし、1つ前の状態(過去)へ戻る
- Redo(やり直す):Undoによって取り消された操作を、履歴に基づいて再適用する(未来へ進む)
一般的なUndo/Redo履歴を持つアプリケーションでは、Redoは「Undoによって取り消した操作を再適用する」ための機能として動作します。
UndoとRedoの比較表
| 比較項目 | Undo(アンドゥ) | Redo(リドゥ) |
|---|---|---|
| 日本語の意味 | 元に戻す、取り消し | やり直す、再適用 |
| 履歴の方向 | 過去へ戻る(巻き戻し) | 未来へ進む(早送り) |
| 主なアイコン | ↺ または ↶(左向き矢印) | ↻ または ↷(右向き矢印) |
| 英語の成り立ち | Un-(反対・取り消し)+ do(する) | Re-(再び)+ do(する) |
| 利用できる主な条件 | 直前に何らかの操作を行っているとき | Undoによって取り消した操作が残っているとき(※) |
| 一般的な動作例 | 誤って消した文字を復活させる | Undoで復活させた文字を「やっぱり消そう」と再適用する |
※一般的なUndo/Redo履歴では、Undoによって取り消した操作がある場合にRedoを利用できます。なお、Microsoft Officeなど一部のソフトでは、Ctrl + Y(Macは Cmd + Y)が「Redo」だけでなく「直前の操作のRepeat(繰り返し)」のショートカットを兼ねている場合があります。
主要OS・ソフト別ショートカットキー一覧
キーボードショートカットを覚えるだけで、作業効率は劇的に向上します。OSOS [オーエス]Operating System。基本ソフトウェアやアプリごとの主要なショートカットキーをまとめました。
WindowsとMacの基本ショートカット
| OS | Undo(元に戻す) | Redo(やり直す) |
|---|---|---|
| Windows | Ctrl + Z | Ctrl + Y または Ctrl + Shift + Z |
| macOSmacOS [マックオーエス]Appleが開発するMac用のオペレーティングシステム | Cmd (⌘) + Z | Cmd (⌘) + Shift + Z |
補足(macOSでのショートカット)
macOSの標準的なショートカットでは、Command (⌘) + Shift + ZがRedoとして利用できます。ただし、Microsoft Office for Macのように、アプリケーションによってはCommand (⌘) + Yが割り当てられている場合もあります。
なぜRedoには「Ctrl+Y」と「Ctrl+Shift+Z」の2種類があるのか?
Windows環境において、Redoのショートカットキーに Ctrl + Y と Ctrl + Shift + Z が見られるのは、アプリケーションごとのショートカット設計の違いによるものです。
| 系統・ソフト例 | WindowsでのRedo | MacでのRedo | ショートカットの特徴 |
|---|---|---|---|
| Microsoft Office (Word, Excel, PowerPoint など) | Ctrl + Y | Cmd + Y | Windows版・Mac版Officeでは Ctrl+Y / Cmd+Y が割り当てられており、直前の操作を繰り返す「Repeat」機能も兼ねる |
| Photoshopなど一部のアプリ | Ctrl + Shift + Z | Cmd + Shift + Z | Shift キーを組み合わせることで「Undo(戻す)の逆動作」として割り当てられている |
初心者でも絶対忘れない!UndoとRedoの直感的な覚え方
「どっちが戻すで、どっちが進めるか分からなくなる」という方は、以下の3つのイメージで覚えましょう。
【操作履歴のタイムライン(イメージ)】 過去 ◀──────────── 現在 ────────────▶ 未来 [ Undo ] (元に戻す) [ Redo ] (進める)① 英語の語源で覚える(Un- と Re-)
- Undo =
Un-(反対・取り消し) +do(する)- 靴紐を「ほどく(Untie)」や、鍵を「開ける(Unlock)」と同じで、行った操作を取り消して元の状態に戻すという意味です。
- Redo =
Re-(再び) +do(する)- 「リピート(Repeat)」「リトライ(Retry)」と同じで、Undoで取り消した操作を再び適用するという意味です。
② 音楽プレーヤーの「巻き戻し」と「早送り」(イメージ)
- Undo は、操作履歴を1つ戻す**「巻き戻し(◀◀)」**のイメージです。
- Redo は、巻き戻しすぎた履歴を先へ進める**「早送り(▶▶)」**のイメージです。
※時間そのものを戻すのではなく、あくまで「アプリケーションが記録している操作履歴上の位置を移動する」というイメージです。
③ 「Undoした操作を再適用する」という関係性
一般的なアプリケーションでは、Redoは 「Undoによって取り消された操作を再適用する」 ための機能です。 そのため、取り消した履歴がない状態では、画面上のRedoボタンはグレーアウト(無効化)されています。
「まず戻す(Undo)のが先、戻しすぎたら再適用する(Redo)のが後」と順序を意識すると迷わなくなります。
【IT・エンジニア向け】データベースにおけるUndoとRedoの違い
基本情報技術者試験やデータベース(DBMS)の設計・運用を学ぶ際にも、「Undo」と「Redo」という重要概念が登場します。
PC操作のUndo/Redoと名前は似ていますが、データベースの世界におけるUndoとRedoは、 トランザクション管理(ACID特性) や 障害復旧(リカバリ) を支える厳密なログ・復旧機構です。
※注意
データベースにおけるUndo/Redoの具体的な仕組みや用語の定義はDBMSによって細部が異なります。以下では代表的なリレーショナルデータベースである Oracle Database などを例に解説します。
【データベースの障害復旧(リカバリ)の流れ】障害発生 │ ▼① Redoログを適用(ロールフォワード) └─▶ 必要なRedoログを適用して、障害発生直前までのデータベース変更を再現する │ (※この時点では未コミットの変更も含まれ得る) ▼② Undo情報を適用(ロールバック) └─▶ Undo情報を使って未完了(未コミット)のトランザクションを取り消し、整合性を保った状態にするデータベースにおけるUndoとRedoの役割
| 項目 | データベースのUndo | データベースのRedo |
|---|---|---|
| 主な役割 | 変更を取り消すための情報 | 変更を再現するための情報 |
| 保持する主な情報 | 変更前の情報(before image) | データベースブロックへの変更情報(change vectorなど) |
| トランザクションのRollback | 使用する(変更前の状態へ巻き戻す) | 直接のRollback情報ではない |
| 障害復旧での使われ方 | ロールフォワード後に未コミット変更を取り消す際に使用 | データ変更を再適用(ロールフォワード) する際に使用 |
| 代表的な処理 | Rollback(ロールバック) | Roll Forward(ロールフォワード) |
| その他の用途 | 読み取り一貫性(Read Consistency)の維持、過去データの参照(フラッシュバック)など | メディア障害時のデータ復元(アーカイブRedoログとの組み合わせ)など |
1. Undo情報(ロールバック)の仕組み
データベースで処理(トランザクション)を実行中にエラーが発生した場合や、意図的に処理を中止した場合、中途半端な変更が残るとデータの整合性が崩れてしまいます。
Undoは、テーブルやデータブロックの 「変更前の情報(before image)」 を保持しており、トランザクションをキャンセルした際に元の状態へ巻き戻す(ロールバック)ために利用されます。また、他のユーザーが更新中のデータを参照する際の 読み取り一貫性 の保証にも使われます。
2. Redoログ(ロールフォワード)の仕組み
データベースに変更が加えられると、コミットの成否にかかわらず、データブロックへの変更情報が Redoログ として記録されます。
停電やサーバーダウンなどの障害が発生した際、メモリ上にあった未書き込みの変更を復旧するために、 必要なRedoログを適用してデータベースを障害発生直前までの変更を再現(ロールフォワード) させます。
3. リカバリにおけるRedoとUndoの連携
実際のDBMS(Oracle Databaseなど)のクラッシュリカバリでは、次のようにRedoとUndoが連携して動作します。
- ロールフォワード(Redoの適用):Redoログを適用して、障害発生直前までのブロック変更をすべて再適用します(ここには未コミットの変更も一時的に反映されます)。
- ロールバック(Undoの適用):その後、Undo情報を使って、完了していなかった未コミットトランザクションの変更を取り消し、データベースを完全に一貫した状態に整えます。
このように、UndoとRedoは、データベースのトランザクションの**原子性(Atomicity)・一貫性(Consistency)・永続性(Durability)**や障害復旧を支える重要な仕組みの一部です。
Undo・Redoに関するよくある質問(FAQ)
Q1. Undoした後に文字を入力したらRedoできなくなったのはなぜ?
A. 多くの一般的なアプリでは、Undo後に新しい編集を行うと、それまでのRedo履歴が破棄されるためです。
多くの一般的なアプリでは、Undo/Redo履歴をスタックに近い形で管理しています。 過去に戻った(Undoした)後に新しい別の操作を行うと、そこから新しい編集履歴が作られるため、古いRedo履歴は消去されます。
【一般的な操作履歴の分岐イメージ】[入力A] ──▶ [入力B] ──▶ [入力C] ▲ Undoでここに戻る │ └──▶ 新しく [入力D] を実行! ↓ ※ 以前の [入力C](Redo履歴)は消失する注意 一般的なアプリでは「元に戻したあと、別の文字を入力するとRedoできなくなる」ことが多いため、Undoした内容を保持したい場合は注意して操作しましょう。
Q2. エクスプローラーやFinderでファイルを誤って削除した場合もUndoできる?
A. 多くのファイル操作で Ctrl + Z(Macは Cmd + Z)による取り消しが可能です。
- ファイルをゴミ箱へ移動してしまった直後
- ファイルを別のフォルダへ誤って移動してしまった直後
- ファイル名を誤って変更してしまった直後
上記のような操作は、直後であれば Ctrl + Z / Cmd + Z で元に戻せることがあります。ただし、完全に削除した場合(Shift+Deleteなど)や、ファイル操作の種類・状況によってはUndoできない場合もあります。
Q3. Undoの履歴はどこまで残る?
A. アプリケーションの仕様や設定、保持できる履歴数などによって異なります。
作業中の多くの操作履歴を保持できるアプリもあれば、保持数に上限があるものもあります。また、アプリケーションを終了したり、Webブラウザのページを再読み込み(リロード)したりすると、Undo/Redo履歴が失われる場合もあるため注意が必要です。
まとめ:UndoとRedoを使いこなして作業効率をアップしよう
UndoとRedoの違いを理解しておくと、日々のPC操作を安心して素早く進められるようになります。
今回のまとめチェックリスト
- **Undo(Ctrl + Z / Cmd + Z)**は「元に戻す(過去へ戻る)」操作
- **Redo(Ctrl + Y / Ctrl + Shift + Z / Cmd + Shift + Z)**は「Undoで取り消した操作を再適用する」操作
- 語源は Un-(反対・取り消し) と Re-(再び)
- 一般的なアプリでは、Undoを実行して取り消した操作があるときにRedoが使える
- Undo後に新しい操作を行うとRedo履歴が消えるアプリが多いので注意
- データベースでは、**Redoログで変更を再現(ロールフォワード)**し、Undo情報で未コミット変更を取り消す(ロールバック)
ショートカットキーや仕組みを理解して、日々のPC作業やプログラミング、データ管理をより快適に進めましょう!
以上で本記事の解説を終わります。
よいITライフを!
人気記事
- 1
- 2
- 3
- 4
- 5
思考の整理というテーマを、実務ですぐに使える具体的な「技術」として落とし込んだ一冊です。