최근에 다른 명령에 대한 별칭을 만들고 싶었습니다. 실제 세션에서 실제로 변경 사항을 적용하려면 ~/.bashrc에 별칭을 추가한 다음 해당 파일을 가져와야 한다는 것을 알았습니다.
소스에서 수정 방법을 모르는 몇 가지 오류가 발생하고 있습니다. 오류는 다음과 같습니다.
/home/educpf/.bashrc:type:64: bad option: -P
/home/educpf/.bashrc:105: command not found: shopt
/home/educpf/.bashrc:107: command not found: shopt
/home/educpf/.bashrc:112: command not found: shopt
오류가 있는 줄은 다음과 같습니다.
-P dircolors >/dev/null을 입력하면;
shopt -s checkwinsize
shopt -s 확장 별칭
shopt -s histappend
이 파일을 변경하지 않았기 때문에 이것은 이상합니다. 그래서 모든 것이 예상대로 작동한다고 가정했지만 그렇지 않은 것 같습니다. 이것이 정상인가요? 무엇을 바꿔야 하나요? 모든 피드백에 감사드립니다! :)
답변1
오류 메시지는 bash
쉘을 실행하고 있지 않음을 나타냅니다. 나는 당신이 아마도 .shell 과 같은 내장 유틸리티가 없는 쉘 zsh
을 사용하고 있다고 추측합니다 . 지금은 Manjaro의 기본 로그인 셸이 무엇인지 모르지만 다음과 같은 Manjaro의 변형이 있는 것 같습니다.type
-P
bash
bash
shopt
훌륭한 커뮤니티 에디션zsh
, 기본적으로 쉘을 사용합니다.
Linux 세계에서 셸이 어디에나 존재한다는 점을 고려하면 bash
별칭(또는 그 무엇이든)을 추가하는 방법에 대한 튜토리얼에서 기본적으로 셸을 설명하는 것은 놀라운 일이 아닙니다. 또한, 전생에서 가져온 초기화 파일이 있거나 기본 로그인 셸을 변경하려는 사용자를 지원하기 위해 배포판에 의해 배치된 초기화 파일이 있다는 bash
것은 놀라운 일이 아닙니다 .bash
zsh
셸에 별칭을 추가 하려면 별칭을 ~/.zshrc
파일( $ZDOTDIR/.zshrc
또는 변수가 정의된 경우 파일 ZDOTDIR
) 또는 해당 파일에서 파생된 파일에 넣으세요. 이 파일은 bash
쉘의 ~/.bashrc
파일에 해당합니다. 즉, 대화형 쉘을 시작할 때 얻은 도트 스크립트입니다.
다행스럽게도 별칭을 정의하는 구문은 최소한 기본적인 사용법 zsh
에서는 의 구문과 동일합니다 .bash