Mostrar en pantalla el contenido de la variable HOME
Solucion 1:
#include <stdio.h>
#include
<stdlib.h>
int main(int argc,
char **argv)
{
char *cadena; //
solo nos vale un puntero
cadena=getenv("HOME");
// fijaros que no lleva $, el nombre de la variable es HOME
printf("Valor
de la variable HOME: %s",cadena);
return 0;
}
Existe otra forma
de conseguir los valores de las variables, sin conocer el nombre)
#include <stdio.h>
#include
<stdlib.h>
int main(int argc,
char **argv, char **env)
{
// el array
bidereccional char **env, contiene todas las variables de entorno
int c=0;
while (env[c]){
// la
lista de punturos env[c], cuando termina la lista da NULL, y el while
se sale.
printf(“Variable
de entorno: %s”,env[c]);
c++;
}
return 0;
}
Salida que genera:
Si compara la
lista de variable de entornos con las de terminal, en el terminal hay
muchas más. Ya que solo muestra las que han sido exportadas (estan
puesta a disposición a todos mis procesos)
Exportar se hace:
$export
nombre_variable
No hay comentarios:
Publicar un comentario