bash 명령의 정의나 소스를 찾고 계십니까? [복사]

bash 명령의 정의나 소스를 찾고 계십니까? [복사]

bash때로는 내가 입력한 명령의 실제 결과가 무엇인지 궁금할 때가 있습니다 . 일반적으로 실행 파일이 which.

$ which vim
/usr/bin/vim

하지만 별칭을 만들면 어떻게 되나요 vim?

$ alias vim="echo mwahaha"
$ which vim
/usr/bin/vim

글쎄요. 좋지 않아요. 뭔가 의심이 들고 vim별칭이 사용되었는지 확인하고 싶다면 다음을 입력하면 됩니다.

alias vim

...하지만 별칭이 있다면 별칭을 alias vim='vim -p'확인할 생각은 전혀 하지 않을 것입니다 . 별칭은 여전히 ​​잘 작동하기 때문입니다.vim

어떤 특정 명령이 평가되고 있는지 정확히 어떻게 알 수 있나요 bash?

답변1

을 사용하면 typebash 내부에 있습니다.

$ type vim
vim is /usr/bin/vim
$ type -p vim
/usr/bin/vim
$ alias vim="echo mwahaha"
$ type vim
vim is aliased to `echo mwahaha'
$ type -p vim
$

명령 정보를 얻는 다양한 방법에 대한 자세한 분석이 답변저자: 스티븐 차제라스(Stephen Chazeras) which셸의 해시 조회 테이블을 모르는 악의적인 프로그램이라 할지라도 문제를 일으킬 수 있는 에 의존해서는 안 됩니다 .

관련 정보