Respuestas:
sourcey .son sinónimos en Bash .
Para cualquiera que quiera verificar que los comandos son simplemente sinónimos y nada más, mire el código fuente , digamos para la versión 4.3, y examine el archivo builtins/source.def. Usted va a leer que los dos comandos internos, sourcey ., utilizar la misma función: source_builtin.
.es el comando fuente tradicional, heredado del antiguo shell bourne. sourcees solo un bash incorporado que hace exactamente lo mismo ., presumiblemente porque es más legible (un .solo puede ser difícil de detectar con una fuente pequeña). Verás help sourcey help .muestra la misma información.
man bashy luego busca source, verá que source filename [arguments]es sinónimo de . filename [arguments].
.es sinónimo sourcede bash, pero no de POSIX sh, por lo que debe usarlo .si / script / sh ejecuta su script. Tenga en cuenta que bash afirma ejecutarse como POSIX sh cuando se llama como / bin / sh, pero acepta sourcesin quejarse.
Este comportamiento me ha mordido, los scripts probados con bash como / bin / sh fallan cuando se ejecutan bajo cenizas, por ejemplo.
#!/bin/shembargo, cuando el shebang dice que nunca debes asumir que el shell admite nada más que las características POSIX. pubs.opengroup.org/onlinepubs/9699919799/utilities/…