GNU/Linux >> Tutoriales Linux >  >> Linux

Comando fuente en Linux

El comando fuente es un comando de shell incorporado que se usa para leer y ejecutar comandos desde un archivo dentro de la sesión de shell actual. El comando fuente se usa comúnmente para retener/cambiar la variable de entorno en el shell actual. En resumen, obtener un script ejecutará comandos de ejecución en el shell actual .

El comando fuente es útil para:

  • Actualización de su entorno de shell actual
  • Para ejecutar un script de shell en el contexto del entorno actual
  • Para importar una función de shell en su secuencia de comandos
  • Leer variables desde un script de shell

Sintaxis para el comando fuente

La sintaxis de este comando de shell incorporado es legible por humanos. Toma un archivo y, si se proporcionan argumentos, sirven como parámetros posicionales para el script que se pasa.

source FILENAME [ARGUMENTS]

El . (punto) también se puede utilizar como alternativa para el comando fuente.

. FILENAME [ARGUMENTS]

Cómo usar el comando fuente

Aquí explico algunos ejemplos prácticos donde puedes aplicar el comando fuente.

1. Actualice su entorno de shell actual

Como usuario, puede definir un alias en su entorno de shell actual. Para definir uno para ls -l tipo:

alias ll = 'ls -l'

Para usarlo escribe:

ll

Aunque lo anterior enumera los archivos en el directorio actual en formato largo, solo funciona para la sesión de shell actual. Para realizar los cambios de forma permanente, abra el archivo ~/.bashrc y agregue:

alias ll = 'ls -l'

Para actualizar el shell actual tipo de entorno:

source ~/.bashrc

2. Ejecute un script de shell en el contexto del entorno de shell actual

Un script de shell no conoce las variables que define como usuario en su entorno de shell actual. El comando fuente se puede usar para ejecutar su script de shell en el contexto de la sesión actual.

Para definir un tipo de variable temporal:

WEBSITE = example.com

Para crear un tipo de script personalizado:

#!/bin/bash
echo $WEBSITE

Guarda el archivo. Para ejecutarlo en el contexto de la sesión de shell actual, escriba:

source ./myscript.sh

El resultado se muestra a continuación.

example.com

3. Importar una función de shell

Para definir un tipo de script de shell personalizado:

!#/bin/bash
foo() {
 echo  "test"
 }

Guarde lo anterior como script.sh.

Para importar la función del script anterior en su sesión de shell actual, escriba:

source script.sh

Para usar el foo tipo de función:

foo

El resultado se muestra a continuación.

test

4. Leer variables desde un script de shell

Para crear un script de shell con algunas variables, escriba:

#!/bin/bash
a=1
b=2
c=3

Para leer las variables dentro de otro tipo de script de shell:

#!/bin/bash
source abovescript.sh
echo $a, $b, $c

La salida debe ser:

1, 2, 3

5. Leer y ejecutar comandos

El comando fuente puede leer y ejecutar comandos desde un archivo. Tengamos un archivo de texto con un conjunto de comandos.

Por ejemplo, el archivo commands.txt tiene el siguiente contenido:

pwd
date

La salida de la fuente :

$ source firstexample.txt
/home/developer
Fri Feb 25 11:10:11:09 GMT 2021

6. Pasar argumentos a funciones

Esta sección describe cómo pasar el parámetro a la función y la misma función que podemos reutilizar a través del comando fuente.

funciones.sh
!/usr /bin/bash
 var1=$1
 var2=$2
execute.sh
!/usr/bin/bash
 source functions.sh 10 AA
 echo “var1 = $var1”
 echo “var2 = $var2”
Salida.sh
var1 = 10
var2 = AA

Conclusión

El comando fuente evaluó el script en el shell actual, mientras que el comando exec se ejecuta en un nuevo shell.

A través de este artículo, aprendió cuatro ejemplos prácticos del comando fuente. Aunque todos son útiles, el más importante para ti como usuario es el primero.


Linux
  1. comando linux mv

  2. Linux du comando

  3. Comando IP de Linux

  4. Comando cd de linux

  5. Cambiar shell predeterminado en Linux

Comando Df en Linux

Comando fuente en Linux

Construcción de comandos

Explicación del comando fuente en Linux

Comando de exportación en Linux explicado

Exportar comando en Linux | Explicado