vim 환경에서는 명령을 실행할 수 없습니다

vim 환경에서는 명령을 실행할 수 없습니다

이것은 mycommand내 lib/work.sh 파일에 있는 함수입니다.

cat .bashrc
source /home/lib/work.sh

즉, mycommand자동으로 획득됩니다.
mycommand터미널에서 실행할 수 있습니다.
이제 파일을 편집하려면 vim test.txtvim shift+"의 명령 모드로 들어가서 다음을 입력하십시오 !mycommand.

/bin/bash: mycommand: command not found

shell returned 127

Press ENTER or type command to continue

mycommandvim에서 찾을 수 없나요?

답변1

다양한 종류의 껍질이 있습니다 -로그인 쉘과 비로그인 쉘의 차이점은 무엇입니까? (이 부분을 찾아보세요 .bashrc)

이게 다 구매가 아니 .bashrc어서 work.sh구매가 없습니다.

문제를 해결하려면 함수를 내보내서 서브셸에서 사용할 수 있도록 해야 합니다.

Bash에서 함수를 "내보낼" 수 있나요?

myfun() {
    echo "Hello!"
}

export -f myfun

--

vim
:!myfun

일하다!

관련 정보