Assim:
# Install git on demand
function git()
{
if ! type -f git &> /dev/null; then sudo $APT install git; fi
command git "$@";
}
O command
embutido suprime a pesquisa de função. Eu também mudei seu $*
para "$@"
porque isso vai lidar corretamente com argumentos que não são uma palavra (por exemplo, nomes de arquivos com espaços).
Além disso, adicionei o argumento -f
a type
, porque senão notará a função.
Você pode querer considerar o que fazer em caso de erro (por exemplo, quando apt-get install
falha).