리눅스 Zsh에서 history -c 오류 해결 및 히스토리 삭제 방법

fc: event not found: -c 에러

칼리 리눅스는 2023.3 이후 버전부터 기본 쉘을 bash에서 Zsh로 변경했습니다.

이로 인해 bash 쉘에 익숙한 사용자들은 새로운 Zsh 쉘에 적응해야 하는 상황이 생겼으며, 이를 배려해 칼리 리눅스는 기본 쉘을 사용자가 직접 bash로 다시 변경할 수 있는 방법을 제공하고 있습니다.(bash쉘로 변경하는방법)

 

칼리리눅스 기본쉘 zsh쉘에서 bash쉘로 변경하는방법

칼리리눅스의 기본 zsh쉘 칼리리눅스 2023.3이후 버전부터는 기본 쉘이 bash쉘에서 zsh쉘로 변경되었습니다.(링크) 큰 문제가없다면 새로운 zsh쉘을 사용하면 되지만 기존에 Bash color prompt를 사용하여

newstroyblog.tistory.com

 

쉘이 변경되면서 일부 명령어의 사용 방식에도 차이점이 생겼는데, 그중 대표적인 예가 history -c 명령어입니다.

bash 쉘에서는 이 명령어를 사용해 명령 기록을 모두 삭제할 수 있지만, Zsh 쉘에서는 "fc: event not found: -c"라는 오류 메시지가 나타나고, 명령어가 제대로 작동하지 않습니다.

 

이번 포스팅에서는 Zsh에서 history -c 오류가 발생하는 이유와함께, Zsh에서 히스토리를 삭제하는 방법에대해 알려드리겠습니다.

 

 

왜 Zsh에서 history -c가 작동하지 않을까?

bash쉘에서는 history -c 명령을 사용해 히스토리 내역을 간단히 삭제할 수 있습니다.

하지만 Zsh에서는 history 명령이 bash와 다르게 동작합니다. Zsh에서의 history 명령은 실제로 fc(file control)_명령의 별칭(alias)으로 설정되어 있습니다.

  • fc 명령은 히스토리를 이벤트 단위로 관리하며, -c 옵션은 지원하지 않습니다.
  • 따라서 history -c를 실행하면 fc: event not found: c 라는 오류가 발생하게됩니다.

 

Zsh에서 히스토리를 삭제하는 방법

Zsh 히스토리 기록 삭제

Zsh에서 히스토리를 삭제하거나 초기화 하려면 아래 명령어를 사용할 수 있습니다.

fc -p

 

Zsh 히스토리 내역 조회

히스토리 내역을 조회하고싶으면 아래 두 명령어를 선택하여 사용할 수 있습니다.

fc -l
or
history

 

Top