No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Qué son y cómo se utilizan las variables de entorno

19/23
Recursos

Aportes 149

Preguntas 19

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Este tema lo ví hace 10 años en la Universidad. Nunca lo entendí. Me frustré, y descarté la programación (recuerdo que me enseñaban a programar en Java). Hoy, dandole de nuevo una oportunidad, lo entendí en menos de 10min!, Desaprendiendo paradigmas y aprendiendo nuevamente.! #NoTeRindas #NuncaParesDeAprender

Variables de Entorno

Es un definición global a la que todos los procesos tienen acceso. esta toma mas información de lo que se este typeando.
Ejemplo: echo $PATH = se encuentran todos los comandos ejecutables
.
Asignación de las variables de entorno
export: Este comando se utiliza para asignar a toda la sesión
Ejemplo: export MI_VAR = mauro, si luego escribimos echo $MI_VAR se mostrará mauro en la terminal. (Este permanecerá miestras dure mi sesión)
.
var: Este comando solo asigna el valor para el proximo proceso que se va a ejecutar. este no es muy usual.
Ejemplo: MI_VAR=/home php env.php

NOTA: Podeis crear variables de entornos que guarden directorios y asi os podeis mover mas rapido por el sistema si teneis algun directorio al que accedais a menudo. La pega es que las variables de entornos que creeis se eliminan cuando se apagua el pc, esto lo podeis arreglar agregando la variable de entorno al archivo $HOME/.bashrc

Lo editais y añadis la variable que querais: export [nombre de la variable]=[valor] y LISTO, teneis una variable de entorno personalizada que se guardará en tu sistema siempre

Qué son y cómo se utilizan las variables de entorno

  • Son variables que guardan un valor preestablecido

  • Un comando es un programa en un directorio. Entonces este programa se puede ejecutar escribiendo su ruta o su variable de entorno "echo"

  • Se pueden utilizar para ejecutar un programa mediante un comando el cual contiene la variable de entorno . También es muy útil ya que se pueden crear nuevas variables de entorno (export) .

richard@Rich-Rodas:~$ export MI_VAR = MauroChojrin
richard@Rich-Rodas:~$ export "variable" = "valor de la variable"

Entonces cuando quieras hacer uso del nombre del profe puedes escribir simplemente :

richard@Rich-Rodas:~$ echo "<Gracias por la clase profe"  $MI_VAR "<3"
<Gracias por la clase profe Mauro <3 

Creo que es importate dar a conocer el comando alias, el cual sirve para ponerle un sobrenombre a un comando, puede ser muy útil para comandos que suelen ser largos. por ejemplo

alias mi_comandito = ls -al

y así luego en lugar de escribir todo el otro comando solo escribiría

mi_comandito prueba.txt

más info acá https://alvinalexander.com/blog/post/linux-unix/create-aliases/

Mis Notas

  • Las variables de entorno son definiciones globales o valores globales a los que todos los procesos de un sistema tiene acceso, por ejemplo, la variable PATH es accesible para todos los procesos del sistema, debido a que en esta variable se almacenan todas las rutas de los ejecutables.

  • Para consultar el contenido de una variable de entorno se debe anteponer el simbolo pesos ($). Ejemplo: echo $PATH.

  • Se pueden asignar variables de entorno para un comando en particular o para toda la sesión en que nos encontremos.

  • La asignación de variables de entorno para toda la sesión, se realiza asi: export VAR=valor, donde VAR es el nombre de la variable que estamos creando y valor es lo que queremos que exista en esta variable.

  • para asignación de variables locales, simplemente se debe asignar un valor a una variable simple. Esto se utiliza por ejemplo, cuando queremos asignar un valor a una variable que solo sea valido para la ejecución de un comando, sin afectar el valor global que ya tengo asignado. Para eso, podemos hacerlo asi: VAR=valor comando.

Hablando de variables de entorno, a menudo se da el caso de querer configurar una variable de entorno de forma permanente en el sistema. (sí. Lo que explicaron en el video sirve para configurar variables de entorno pero se borran tan pronto se cierra la terminal).
Para configurar variables solo para accesar desde la terminal actual:

VARNAME="my value"

Para configurar variables para accesar desde la terminal actual y todos los procesos iniciados desde la misma:

export VARNAME="my value"

Para configurar variables de forma permanente para accesar desde todas las sesiones y todos los procesos del sistema:

sudo vim /etc/environment

Y al final del archivo agregar la variable:

VARNAME="my value"

Nota: es necesario volverse a loguear para que la variable sea leida por el sistema y se pueda usar, pero ahora si queda permanente.

OJO: el comando export asigna valor global a la variable pero solo en la sesión. Si se cierra la terminal y se vuelve a entrar ya no estará disponible.

El comando printenv nos muestra la lista de las variables de entorno existentes

En este video se puede ver parte del contenido que le falto a la clase

https://www.youtube.com/watch?v=VSmfKeTkL48

Una variable de entorno es un definición global a la que todos los procesos tienen acceso en el sistema operativo. Se almacenan todas la rutas de los programas que pueden ser ejecutables mediante $PATH.

llevo aproximadamente ya 3 clases en las que no entiendo él de qué habla u.u
pero bueno, eso solo me demuestra que aún me queda mucho por aprender, animos!!!

🐱‍💻 Las variables de entorno son valores dinámicos que afectan los programas o procesos que se ejecutan en un computador, estas variables se pueden crear, editar, guardar y eliminar.

$PATH contiene todas las rutas de los archivos ejecutables. Por esa razón cuando se escribe en la consola. Si se escribe en la consola echo $PATH esta misma nos mostrara todas las rutas(los directorios) en donde se puede ejecutar "echo"

asignación global = export VAR=valor
asignación particular = VAR= valor comando

Variables de entorno:
Definicion global (todos los procesos tienen acceso)
PATH(ruta): guarda las url de los comandos que utilizamos
Para ver su contenido:
echo $PATH

Una variable de entorno es una definición global a la que todos los procesos tienen acceso para obtener más información sobre lo que está sucediendo alrededor. Por ejemplo, la variable PATH almacena todas las rutas en las que el intérprete de comandos (la terminal) tiene que ir a buscar los archivos que pueden ser ejecutables.
<br><br>
Para referirnos a una variable de entorno en la terminal, debemos hacer uso del signo de pesos ($) seguido del nombre de la variable con la que queremos interactuar. Por ejemplo: $ echo $PATH.
<br><br>
La asignación de variables de entorno se puede realizar tanto para un solo comando (algo raro, pero en algunas ocasiones se hace) o para toda la sesión.

  • Asignación para un comando: esto es algo que no es muy común, pero se podría necesitar para, por ejemplo, reemplazar el valor de una variable ya asignada sin alterarla para todos los demás comandos. Y esto se logra de la siguiente manera $ VAR=valor comando.
  • Asignación para toda la sesión: esto se realiza a través del comando $ export NOMBRE_VAR=valor. Por ejemplo: $ export MI_VAR=Juan && echo $MI_VAR.

**MIS NOTAS **
¿Qué es una variable?
En informática, una variable es una ubicación que permite almacenar un valor que se puede cambiar según las condiciones o la información del programa. Las variables juegan un papel importante en la programación, ¡permiten a los desarrolladores escribir programas flexibles relacionados con el sistema operativo en el que trabajan!

¿Qué son las variables de entorno de Linux?
Las variables de entorno son valores dinámicos que afectan los programas o procesos que se ejecutan en un servidor. Existen en todos los sistemas operativos y su tipo puede variar. Las variables de entorno se pueden crear, editar, guardar y eliminar.

En Linux, las variables de entorno son marcadores de posición para la información almacenada dentro del sistema que pasa datos a los programas iniciados en shells (intérpretes de comando) o sub-shells. (no se si se escribe asi jejeje sino me pueden corregir)

Nueva variable de entorno en Linux
La sintaxis básica de este comando se vería así:

export VAR="value"
Vamos a desglosarlo:

export: el comando utilizado para crear la variable.
VAR: el nombre de la variable.
= indica que la siguiente sección es el valor.
«value»: el valor real
Espero les guste 😃 #NoParen de Aprender 😄

Comparto un excelente blog para aclarar y ampliar varios puntos vistos en esta clase: Aprenda Variables de entorno de Linux Guía paso a paso

Por fin entendi para que se usa $
gracias profe

Variable de entorno es una definición global a la que todos los proceso tiene acceso, como el SO y la terminal en este caso $PATH
esta variable muestra el contenido de un comando.
variable $export
sirve para exportar

Asignacion de variables:

  • Asignacion global:
    export <VAR>=<valor>
  • Asignacion particular (solo se define para el comando que voy a ejecutar)
    <VAR>=<valor> <comando>

Variable de entorno

Definición global a la que todos los procesos tienen acceso, incluso el sistema operativo.

$PATH es una variable en la que se almacenan todos los archivos que pueden ser ejecutables.

$ para ver el contenido de esta variable.

<h3>Asignación</h3>

Para un comando

Para toda la sesión

Asignación global

export VAR=valor

Asignación particular

VAR=valor

Las variables de sesion ayudan mucho, pero tambien se pueden alias de los comandos

Primero editar el archivo .bashrc: sudo nano ~/.bashrc, agregar esta linea alias instalar= "sudo apt-get install"
Despues ejecutar comando sudo source ~/.bashrc

Ahora podras ejecutar ahora el comando ** instalar [paquete]**

Por si acaso a alguien mas le sucede, es importante que no hayan espacios entre la asignación de la variable. Cuando le agregaba espacios antes y después del igual, quedaba en blanco cuando se imprimia con echo:

Excelente pero como y donde se declaran variables aun mas globales si esas son solo para sesion

La variable global es visible para cualquier proceso en ejecución o que se ejecute desde el shell.
Para ver estas variables globales, escribe el comando printenv
La variable local es visible solo en el shell donde definió.

gracias

Fantástico lo de la asignación

Muy interesante como funcionan las variables de entorno y como su sistematización esta tan bien definida para interactuar con todo el sistema un concepto bastante necesario para manejar la terminal 👍.

En qué casos se usa la asignación de variables?

Genial!

excelente clase, ahora a practicar el uso de variables

echo $PATH variable donde se guarda la config de los comandos
export VAR=valor asignamos valor glabal a la variable
** VAR= valor comando** asignamos valor a la variable solo en ese ejecucion

Años preguntándome sobre este tema, por fin entendí el por qué

fact@FRAMCGTM:~$ cd $OTRAVAR
fact@FRAMCGTM:~/learning/negocios_online$

Los comandos:

  • Nombre de un programa
  • Parámetros
  • Modificadores
    .
    Variables de entorno: Son cadenas que contienen información acerca del entorno para el sistema y el usuario que ha iniciado sesión en ese momento.
    .
    Asignación:
  • Para un comando (var)
  • Toda la sesión (export)

Es increíble que hasta la terminal tenga variables

Se me hizo muy util cuando trabajas en un proyecto de gcloud, para no escribir siempre el ID del proyecto. Es muy util para palabras que debes repetir mucho.

A mi correo de gmail no llego, pero lo envíe a otro correo con un dominio de una web que tengo y a ese si llegó. Por ahí vi en un comentario de un compañero en el que dice que gmail usa unos filtros para spam y que esa es quizás la razón por la que no llegan.

Apuntes
Qué son y cómo se utilizan las variables de entorno

Vamos a retomar por un momento algo que decíamos en la primera clase sobre
los comandos. Un comando era el nombre de un programa con sus paramentos y sus modificadores. Y lo que hemos visto es que en definitiva, el nombre un programa es el nombre de un archivo, entonces ese nombre tenía toda la ruta completa, sin embargo, cuando nosotros estábamos ejecutando los comandos que tenemos ejecutando no escribíamos la ruta completa, sino que simplemente escribíamos el nombre del archivo.
Bueno, pues las respuestas es que esto es posible gracias a que existe lo que se llama una variable entorno, una variable entorno es una definición global a la que todos los procesos tiene acceso y específicamente el sistema operativo o inclusive en nuestro caso la terminal, tiene ese esa variable para tomar más información sobre lo que está pasando alrededor, particularmente la variable que estamos utilizando aquí es la que se conoce como PATH o Ruta en esta variable se almacena justamente todas las rutas en las que el intérprete de comandos o se la terminal tiene que ir a buscar los archivos que pueden ser ejecutable.
Echo $PATH (visualizar el contenido de la variable)
$ Es una forma de pedirle al intérprete comandos que expanda el contenido de esa variable.
Es importante entender que todos los procesos tiene acceso a estas variables, tanto para leerlas como para modificarlas. Respecto de la asignación de las variables de entorno se pueden hacer básicamente para un comando en particular, una cosa un poco rara, pero a veces se hace para toda la sesión para asignarla en para toda la sesión utilizamos este comando que es
export VAR=valor
VAR (nombre de la variable)
Valor(lo que contendrá la variable)
Entonces esta es una definición que quedará sin para todos los comandos que se utilicen durante mi sesión. Otra cosa que se podría querer hacer es justamente define el valor solamente para el próximo comando que voy a ejecutar, por ejemplo, sobre-escribir una variable que se tenía definida y no quiero alterarla para todos los comandos, sino solamente para una ejecución en particular,
VAR=nuevovalor
Bien en esta clase entonces aprendiste cómo utilizar las variables de entorno, que son las variables de entorno y porque los comandos pueden ejecutarse así sin utilizar la ruta completa.

Asignacion de variables de entorno:

  • Para un comando: VAR=valor comando, Esto funciona mas que todo es para darle un valor a una variable que vayamos a escribir es decir sobre escribir una variable que ya se tenia definida anteriormente sin necesidad de alterarla para todos los comandos, sino unicamente para una ejecucion.
  • Para toda la sesion: Para asignarla a toda la sesion, utilizamos "export VAR=valor"
    Ejemplo: Con esto podemos crear una variable y darle un valor que al momento de llamarla por ejemplo con un echo imprimiremos el valor. Esta variable quedara asi durante toda la sesion

Cuando ejecutamos un comando no escribimos su ruta completa, ¿y esto porque? esto es gracias a las variables de entorno , una variable de entorno es algo que representa otra cosa.

Definicion

  • Son definiciones globales y dinamicas a las que acceden todos los procesos, para tomar mas informacion.

¿Que es %PATH%?

  • PATH es una variable de entorno en la que se encuentran las rutas de todos los ejecutables, entonces podriamos decir que hace referencia a todos los archivos ejectuables o comandos.

Ahora si veamos su utilidad y el porque de su existencia de las variables de entorno

  • Cuando ejecutamos un comando, no le especificamos su ruta completa ya que gracias a la variable de entorno en este caso %PATH% no es necesario, lo que sucede es que cuando tecleamos un comando el sistema o en este caso el** interprete de comandos**(terminal) busca en los directorios contenidos dentro de la variable de entorno %PATH% para comprobar si algun archivo ejecutable, coincide con el comando escrito.
Estoy tratando de crear un script que limpié la consola sin necesidad de poner el comando clear, pero no me funciona, alguien me ayuda a organizarlo? #!/usr/bin/bash NEW_DIR=limpiar Limpiar=`clear`

Definitivamente el ABC UNIX en mas de 30+ anos no ha cambiado. Y la gente decía que no tenia futuro en esa época. jajaja

asignación:
a) para un comando
b) para toda la sección

EXPORT VAR = valor

¿Por qué no hay necesidad de usar el símbolo $ cuando invocamos programas como echo pero si hay que usarlo cuando invocamos las variables de entorno que creamos?

no entendí muy bien a ver de nuevo

exelente

Las variables de entorno son un concepto que se viene implementando durante muchos sistemas y plataformas, tanto para sistemas operativos como para el correcto funcionamiento, hasta para la seguridad de algunos datos

Para tener en cuenta al momento de definir la variable de entorno lo hacemos con el comando export nombre_variable = valor (sin signo $).

Pero para visualizar el valor de la variable lo podemos hacer con el comando echo $nombre_variable (CON signo $).

Adicional si queremos eliminar la variable de entorno usamos la palabra unset nombre_variable (sin signo $).

Tengo otra pregunta, se puede asignar a una variable una ruta, de tal manera que cuando usas cd var_ruta te lleve directo a un directorio específico?

Buena clase y explicación del tema.

Muy Brutal esta clase.

Me encantó la forma en la que explica Mauro.

Heeeey chicos, no sé alguien ya lo publico, pero pueden hacer variables para las rutas mas frecuentes que utilizan. Me explico, yo uso WSL y muchas veces accedo a mi **escritorio **de windows, pero mis proyectos los tengo en mi usuario de ubuntu entonces para evitar andar escribiendo la ruta definí lo siguiente:

<export mi_desk=[tu escritorio]>

Y cuando quiero acceder a él solo pongo

<cd $mi_desk>

Espero les sea de utilidad

Alguien sabe porque sucede esto?
-bash: export: `=’: not a valid identifier

Exlente clase!

Bastante interesante como funcionan las variables de entorno y las asignaciones.

Buen aporte. Gracias

Variable de entorno = Definición global donde todos los procesos tienen acceso.

MUCHAS GRACIAS servira hasta para programacion en pantalla negra.

Buena clase 😃

NOMBRE_VARIABLE_ENTORNO_SCOPE_COMANDO_INMEDIATO=valor [ComandoAEjecutar] Sobre escribe el valor de una variable de entorno solamente durante la ejecución del siguiente comando

Genial!

Buena clase, me pareció genial la forma en que se puede ahorrar tiempo almacenando comandos muy utilizados o repetitivos en variables, ya que se pueden ejecutar estos comandos con solo llamar a las variables.

Excelente clase instructor Mauro, ahora conozco como crear variables de entorno y brindarles valores ya sea para la sesión o para la siguiente ejecución.

PATH es una variable de entorno en sistemas operativos similares a Unix, DOS, OS / 2 y Microsoft Windows, que especifica un conjunto de directorios donde se encuentran los programas ejecutables. En general, cada proceso en ejecución o sesión de usuario tiene su propia configuración PATH.

excelente! vamos por mas

Como podria practicar estos comandos?

bien

export marks a variable to be exported to child processes.
An alias (alias ll=‘ls -l’) defines a shorthand for a command.

Aprendiendo.

ginael gran clases para explicar el funcionamiento de la linea de comandos y la ejecuccion de comandos

Me quedo mas claro con este tutorial:

Ahora entiendo como funciona y el poder que tiene : ).

Muy util .!

echo $PATH: Se almacenan todas las rutas donde la terminal va a buscar los archivos ejecutables.

Con el símbolo $ nos muestra el contenido de la variable de entorno.

Para los que quieran crear variables de entorno permanentes, les recomiendo ver este vídeo, solo dura menos de 1min. Espero les sea de ayuda. Saludos
https://www.youtube.com/watch?v=NvAYH5Qu_YQ

Cómo podría borrar esa variable? o modificarla

“VAR” = valor comando.

Solo para asignaciones particulares.

que es una variable de entorno

Con las variables, la terminal adquiere otra capa de personalización 😮

Claro y Entendido !!!😁

Los Comandos

Nombre de un programa
Parametros
Modificadores

Variable de Entorno

Definición global, que todos los procesos tiene acceso a esa variable
tanto para leerlas como para modificarlas.
echo $PATH

Asignación

Pueden realizarse para un comando en particular o para toda la sesión.
export VAR = Valor
Ej:
export MI_VAR=PRUEBA
echo $MI_VAR

Para poder ver nuestras variables de entorno y las que nosotros definimos utilizamos el comando printenv

Una variable de entorno es una definicion global a la que todos los comandos tienen acceso.
ejemplo
$PATH
que es el directorio donde el interprete (bash) ira a buscar los programas ejecutables.
Existen algunas variables de entorno y se pueden acceder a las mismas para modificarlas y se las puede asignar a un comando o para toda la sesion.

VARIABLES DE ENTORNO

- Son definiciones globales a la que todos los procesos tienen acceso, especificamente el sistema operativo o la terminal
- echo $PATH es un ejemplo de poder ver lo que tiene la variable de entorno PATH, con $ se le indica que es una variable
- Se crear o asignar para un comando o para toda la sesión
- TODA LA SESIÓN:
    ~ export VAR= valor

Entendido

Súper interesante… Muchas gracias!

Variables de entorno:
Definición global, la cual todos los procesos tienen acceso
Variables de los path

Asignacion:
- Comando
○ VAR=valor comando
- Session
Export variable=v