O mycommand
é uma função no meu arquivo lib/work.sh.
cat .bashrc
source /home/lib/work.sh
Isso significa que mycommand
foi originado automaticamente.
mycommand
pode executar no terminal.
Agora para editar um arquivo com vim test.txt
, shift+"
para entrar no modo de comando do vim ,input !mycommand
,
/bin/bash: mycommand: command not found
shell returned 127
Press ENTER or type command to continue
Por mycommand
que não pode ser encontrado no vim?
Existem diferentes tipos de shells - Diferença entre o Shell de login e o Shell sem login? (procure a
.bashrc
peça)Nem todos eles estão fornecendo
.bashrc
, portanto,work.sh
não são fornecidos.Para resolver seu problema, você precisa exportar sua função para disponibilizá-la em um subshell.
Posso "exportar" funções no bash?
--
funciona!