Undo 되돌리기
윈도우 환경에서는 쉽게 사용하는
ctrl + z: 되돌리기
ctrl + y: 앞으로
리눅스 환경에서 사용하는 vi 편집기도 되돌리기를 지원한다.
- 관련 명령어는 명령 모드(esc)에서 사용 가능
u: 입력모드 시작 시점까지 모두 되돌리기
U: 바로 전에 입력한 것 되돌리기 (입력 모드가 같은 줄에서 끝나야 함)
ctrl + r: 되돌리기 취소 (앞으로)
이렇게만 보면 헷갈린다. 따라서 예시로 다시 설명한다.
처음 vi test로 아무것도 없는 화면에서 시작한다.
1. 한 번의 입력모드로 한 번에 적었을 때
Hi
Hello
- u: 입력모드 시작 전 상태로 돌아감. 빈 화면
- U: 반응 없음. Hi Hello 형태 그대로 유지
- ctrl + r
> u 이후: 다시 Hi Hello가 나타남
> U 이후: U의 반응이 없기 때문에 ctlr + r도 그대로 유지
u 후에 U를 해도 U는 반응이 없다. 이런 경우 u만 입력되므로 모든 글자가 삭제된다.
1-1. 한 번의 입력 모드로 한 번에 적었을 때(한 줄)
Hi
- u: 이전 상태로 돌아간다.
- U: 이전 상태로 돌아간다.
> 입력 모드가 한 줄에서 끝났기 때문에 이전 상태로 되돌릴 수 있다.
2. 두 번의 입력 모드로 적었을 때
Hi //입력모드 종료 후 다시 시작
Hello
- u: Hello만 지워진다. 되돌리는 단위가 입력모드이므로 새로 시작한 입력모드의 부분이 사라진다.
- U: Hello만 지워진다. 단, 입력모드가 Hello줄에서 시작해야 한다.
- ctrl+r: u 작업만 취소한다. U를 사용했을 경우, ctrl + r로 앞 작업을 불러올 수 없다.
만약, U를 사용해서 되돌렸다면 다시 U를 사용해서 취소하면 된다.
결론
- 바로 전 작업을 취소하고 싶다면 U 사용
- 입력모드를 눌렀던 시점으로 되돌리고 싶다면(보통 입력모드로 연속 입력 하니까 큰 단위들을 되돌리고 싶을 때) u와 ctrl + r을 적절히 이용
'IT > Linux' 카테고리의 다른 글
[Linux 명령어] rsync (0) | 2021.03.03 |
---|---|
[Linux 명령어] hostname (0) | 2021.02.23 |
[리눅스마스터 1급] 리눅스 실무의 이해 - 필기 오답노트 (0) | 2021.02.12 |
[vi 명령어] vi 편집기 명령어 모음 (0) | 2021.01.21 |
[Linux 명령어] 디스크 - Swap, Mount (0) | 2021.01.20 |