¿Hay alguna forma de incluir otro script de shell en un script de shell para poder acceder a sus funciones?
Al igual que en PHP, puede usar la includedirectiva con otros archivos PHP para ejecutar las funciones que están contenidas simplemente llamando al nombre de la función.

sourcecomando, la pregunta en sí misma es cómo identificar la ubicación de unsourcearchivo.Respuestas:
Simplemente ponga dentro de su secuencia de comandos:
O
fuente
Clenguaje. Aquí la fuente está ejecutando el script secundario en el script principal. ¿Qué pasa si solo quiero llamar a una función en particular desde el script secundario?. script.shcon./script.sh. Perdí horas tratando de averiguar qué está pasandoLas respuestas anteriores son correctas, pero si ejecuta el script en otra carpeta, habrá algún problema.
Por ejemplo,
a.shyb.shestán en la misma carpeta, a incluir b con. ./b.shpara incluir.Cuando se ejecuta la escritura fuera de la carpeta, por ejemplo, con
xx/xx/xx/a.sh, archivob.shno encontrado:./b.sh: No such file or directory.yo suelo
fuente
Sí, use la fuente o la forma corta que es simplemente
.:fuente
.versión funcionashtan bien como Bash. La "fuente" solo funciona en Bash.En mi situación, para incluir
color.shdesde el mismo directorioinit.sh, tuve que hacer algo de la siguiente manera.No estoy seguro de por qué
./y nocolor.shdirectamente. El contenido decolor.shes el siguiente.El uso de
File color.shno produce error, pero el color no se muestra. He probado estoUbuntu 18.04y laBashversión es:GNU bash, version 4.4.19(1)-release (x86_64-pc-linux-gnu)fuente
init.shestá (coinciden si lo lanzó./init.shen primer lugar).La sintaxis es
source <file-name>ex.
source config.shscript - config.sh
script de llamada -
Puede aprender a incluir un script bash en otro script bash aquí .
fuente