Provided by: manpages-it_0.3.4-1_all bug

NOME

       environ - ambiente dell’utente

SINTASSI

       extern char **environ;

DESCRIZIONE

       La  variabile  environ  si riferisce ad un vettore di stringhe chiamato
       l’«ambiente» (questa variabile deve essere dichiarata in  un  programma
       utente,  ma  viene  dichiarata nel file header unistd.h nel caso in cui
       l’header venga da libc4 o libc5, o nel caso in cui  venga  da  glibc  e
       _GNU_SOURCE  era  stata  definita).  Questo  vettore di stringhe è reso
       disponibile al processo dalla chiamata di sistema exec(3) che lo  aveva
       fatto  partire.  Per  convenzione  queste  stringhe  sono  nella  forma
       «nome=valore».  Esempi comuni sono:

       USER   Il nome dell’utente collegato (usato da  programmi  derivati  da
              BSD).

       LOGNAME
              Il  nome  dell’utente  collegato (usato da programmi derivati da
              System V).

       HOME   La directory di login  dell’utente,  impostata  da  login(1)  al
              valore specificato nel file delle password passwd(5).

       LANG   Il  nome  della  localizzazione  da  usare  per  le categorie di
              localizzazione quando non siano specificate altrimenti da LC_ALL
              o da variabili d’ambiente più specifiche.

       PATH   La  sequenza  dei  prefissi di directory che sh(1) e molti altri
              programmi usano per cercare un file noto solo  un  suo  percorso
              incompleto.  I  prefissi sono separati da «:» (allo stesso modo,
              CDPATH è usato da alcune shell per trovare la destinazione di un
              cambio  di  directory,  MANPATH  è  usato  da man(1) per trovare
              pagine di manuale).

       PWD    La directory di lavoro corrente. Impostato da alcune shell.

       SHELL  Il nome di file della shell di login dell’utente.

       TERM   Il  tipo  di  terminale  per  il  quale  deve  essere  preparato
              l’output.

       Ulteriori  nomi possono essere messi nell’ambiente dal comando export e
       da «nome=valore» in sh(1), o dal  comando  setenv  se  si  usa  csh(1).
       Argomenti  posso  essere  messi  nell’ambiente  come  parametro  di  un
       exec(3).

       Un programma in C può modificare il suo  ambiente  usando  le  funzioni
       getenv(), putenv(), setenv() e unsetenv().

       Si  noti  che  il  comportamento  di  molti  programmi  e routine delle
       librerie è influenzato dalla presenza o dal valore di alcune  variabili
       d’ambiente. Una raccolta a caso:

       Le  variabili  LANGUAGE,  NLSPATH,  LOCPATH,  LC_ALL, LC_MESSAGES, ecc.
       influenzano l’uso delle localizzazioni.

       TMPDIR influenza il prefisso del percorso di nomi creati da tmpnam()  e
       altre  routine,  la  directory  temporanea  usata da sort(1) e da altri
       programmi, ecc.

       LD_LIBRARY_PATH, LD_PRELOAD  e  altre  variabili  LD_*  influenzano  il
       comportamento del loader/linker dinamico.

       POSIXLY_CORRECT fa seguire ad alcuni programmi a routine di libreria le
       norme POSIX.

       Il comportamento di malloc() è influenzato dalle variabili MALLOC_*.

       TZ e TZDIR forniscono informazioni sul fuso orario.

       TERMCAP spiega come comunicare con un dato tipo di terminale (o  dà  il
       nome di un file che contiene queste informazioni).

       Ecc. ecc.

       Evidentemente,  ci sono problemi di sicurezza. Molti comandi di sistema
       hanno  causato  problemi  quando  un  utente   ha   impostato   IFS   o
       LD_LIBRARY_PATH con valori strani.

VEDERE ANCHE

       login(1),   sh(1),   bash(1),   csh(1),  tcsh(1),  exec(3),  getenv(3),
       putenv(3), setenv(3), unsetenv(3).