Intente usar man sh
o man bash
o la página man para cualquier shell que esté usando. (Tal vez man $SHELL
)
Esto oficialmente no se llama el comando "punto", sino el source
comando. Buscar la palabra source
puede ser útil.
por ejemplo, bash man page (busca "cada comando incorporado") y encontrarás rápidamente la documentación.
En cuanto a explicar el uso, puedo hacer eso aquí mismo. Me referiré a esto como elsource
comando, reconociendo que se puede abreviar a solo un período cuando está usando algunos shells, y con algunos shells ese comando podría ser necesario (porque el punto puede ser reconocido pero la palabra completa source
no puede ser).
Si usas el source
comando, su shell leerá cada línea del archivo de script e intentará ejecutarlo. Necesita permisos de "lectura" en el archivo. (No importa si tiene permisos de "ejecución"). Si modifica una variable, es probable que afecte a su shell actual.
Si, por otro lado, solo intenta ejecutar el archivo, su shell le pedirá al sistema operativo que se encargue de esta solicitud. Esto requerirá permisos de "ejecución". (En algunos sistemas, como OpenBSD, no necesitará permisos de "lectura" para esto. En otros sistemas, incluidas muchas variaciones de Unix, lo necesitará). Es posible que el archivo deba comenzar con un encabezado apropiado (por ejemplo, #!/bin/sh
) el sistema reconoce que se trata de un archivo de script. El sistema operativo ejecutará una copia del shell solicitado y le indicará a ese shell que ejecute el contenido del script. Si se cambia el entorno de shell (por ejemplo, una variable obtiene un nuevo valor, se cambia el directorio de trabajo (con cd
), se redirige un descriptor de archivo (con exec
), etc.), afectará solo al subconjunto que se llamó para el script y no puede modificar el entorno en el shell principal que llamó al archivo de script.