Tengo un pequeño programa que contiene la siguiente estructura de carpetas:
- main.sh
- lib/
- clean.sh
- get.sh
- index.sh
- test.sh
Cada archivo contiene una sola función que uso en main.sh
.
main.sh
:
source lib/*
get_products
clean_products
make_index
test_index
En lo anterior las dos primeras funciones funcionan pero las dos últimas no.
Sin embargo, si lo reemplazo source lib/*
con:
source lib/get.sh
source lib/clean.sh
source lib/index.sh
source lib/test.sh
Todo funciona como se esperaba.
Alguien sabe por qué source lib/*
no funciona como se esperaba?
/etc/bashrc
cómo utiliza unfor
bucle para tratar/etc/profile.d/*.sh
. Si confía en el contenidolib/
, puede reducirse a una frase:for i in lib/*.sh; do . "$i"; done