간단히 말해서:
$ alias search=grep
$ search
search: Command not found.
$ alias search='grep'
$ search
search: Command not found.
$ alias search="grep"
$ search
search: Command not found.
왜 alias
작동하지 않습니까?
또한 별칭을 추가하고 source
다음 파일에서 실행했지만 동일한 오류가 발생합니다.
~/.bashrc
~/.bash_profile
~/.profile
예를 들어 이것이 내 경우 ~/.bashrc
:
alias wtf='git'
alias foo="ls"
alias search=grep
그리고 source ~/.bashrc
새 터미널을 열면 다음과 같은 결과가 나타납니다.
$ foo
foo: Command not found.
$ wtf
wtf: Command not found.
$ search
search: Command not found.
저는 이 컴퓨터의 루트가 아니며(Cent OS 6.8, 관련성이 있는지 확실하지 않음) 방금 실행하면 alias
모든 사용자의 별칭이 표시됩니다. 내 사용자에 대해서만 별칭을 만들 수 없나요?
답변1
문제는 내 컴퓨터의 기본 셸이tsch
.
실행하여 echo $SHELL
사용 중인 쉘을 확인하십시오. tsch
또는 인 경우 별칭을 할당하는 데 기호를 csh
사용하지 않습니다 =
.
예를 들면 다음과 같습니다 tsch
.
$ alias foo="ls"
$ foo
foo: Command not found.
하지만:
$ alias bar ls
$ bar
<works and lists folder contents>
기본 셸을 로 변경하려면 bash
다음을 실행하세요.
$ chsh -s /bin/bash
별칭을 유지하려면 파일 tcsh
을 만들어야 합니다 ~/.tcshrc
.