source es un práctico comando de shell incorporado que acepta argumentos, analiza comandos en un script y los ejecuta en el entorno de shell. El contenido del archivo se lee por fuente y luego se pasa al intérprete de Tool Command Language (TCL), que ejecuta los comandos.

Aprendamos a usar fuente para ejecutar comandos y trabajar con entornos de shell en Linux, junto con una breve explicación de cómo se diferencia del comando bash.

Usar fuente para ejecutar comandos en un archivo

Para usar el comando fuente, primero deberá crear un archivo de muestra y completarlo con algunos comandos de shell. Comience creando un nuevo archivo con el comando táctil. Abra el archivo en un editor de texto de su elección y escriba algunos comandos básicos de shell.

tocarprueba.TXT
viprueba.TXT

# Escriba los comandos en el archivo de texto:
eco "¡Hola!"
personas con discapacidad
ls

# Genere el archivo con la fuente o la sintaxis de puntos
. prueba.TXT
fuentetexto.TXT

Escriba el archivo de texto y proceda a pasarlo como argumento al comando fuente. El sistema ejecutará los comandos en el archivo y devolverá una salida.

instagram viewer

Ahora que conoce los conceptos básicos de cómo usar la fuente, intentemos cambiar el entorno de shell de Bash. Sin embargo, antes de continuar, debe tener una comprensión fundamental de variables de entorno en linux.

Use el comando fuente para actualizar el entorno de Bash Shell

En Linux, las variables de entorno se heredan pero son inmutables. Si ejecuta un script de shell Bash que modifica una variable de entorno $TEST, el script generará una nueva, proceso de shell bifurcado, y la modificación de $TEST se llevará a cabo dentro de él en lugar del Bash original ambiente.

El proceso hijo no podrá modificar el entorno del proceso padre. Sólo puede modificar su propio entorno. Entendamos esto con un ejemplo práctico:

exportar PRUEBA ="debutante"
vi ejemplo

# Escriba estos comandos en el archivo
exportar PRUEBA ="cama"
eco $PRUEBA

# Escriba el archivo, hágalo ejecutable y luego ejecútelo
ejemplo de chmod +x
./ejemplo # esto devolverá "cama"
eco $PRUEBA # esto devolverá "deb"

Aquí es donde entra en juego el comando fuente. Con el comando fuente, puede ejecutar un script en el mismo entorno de shell, que de otro modo se habría bifurcado. Por lo tanto, si obtiene una secuencia de comandos que modifica las variables de entorno, realizará los cambios para el entorno de shell de Bash.

Para probarlo, escriba los comandos en el cuadro de código de arriba en un archivo nuevo y use el comando fuente en lugar de hacerlo ejecutable.

# Crear un nuevo archivo y editarlo
vi prueba archivo
. archivo_prueba
eco $PRUEBA # Esto devolverá "cama"

Como puede ver, usando el comando fuente, pudo actualizar las variables de entorno del proceso principal. Este es el caso de uso principal del comando fuente, es decir, para modificar el entorno principal.

Esos son todos los pasos que necesita para actualizar el entorno de shell de Bash con el comando fuente.

Diferencia entre los comandos Linux bash y source

La diferencia entre los comandos bash y source de Linux es que cuando ejecuta un script con el comando bash, le dice a Linux kernel para crear un nuevo proceso Bash para leer y ejecutar el script, copiar el resultado al proceso de shell original y mostrarlo.

Pero el comando fuente es una concha incorporada que lee y evalúa un archivo dentro del proceso de shell actual. Por lo tanto, todos los cambios realizados por el script se conservarán en el shell de Bash.

Solución de problemas de los errores de comando de origen

En algunos sistemas Linux, es posible que se encuentre con un error de "fuente no encontrada" al intentar usar el comando fuente. Puede corregir este error de dos maneras:

1. cambiar la concha

Algunos shells no admiten el comando fuente. En ese caso, deberá cambiar su entorno de shell con el chsh -s ($cual shell_name) dominio.

Encienda una nueva terminal después de cambiando tu caparazóne intente usar el comando fuente. Si el nuevo shell admite el abastecimiento, entonces debería funcionar sin problemas.

2. Usar la sintaxis de punto/punto

Algunos entornos de shell no admiten "fuente"sintaxis pero la alternativa"." sintaxis. La sintaxis de "fuente" es un sinónimo de punto en Bash. Pero esto no funciona en el shell POSIX, así que para máxima compatibilidad, use la sintaxis de punto.

Comandos básicos de Linux que debe conocer

Los comandos de shell de Linux son una excelente manera de interactuar con el sistema usando la terminal. Son la esencia misma del uso de los sistemas *NIX.

Si bien no necesita conocer todos los comandos, estar familiarizado con algunos útiles seguramente resultará fructífero a medida que se adentra en el mundo de Linux.