Provided by: manpages-it_2.80-3_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  come  LC_COLLATE,
              LC_CTYPE, LC_MESSAGES,  LC_MONETARY,  LC_NUMERIC,  LC_TIME,  cf.
              locale(5).

       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, ecc.).

       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.

       PAGER  L’utilità  preferita dall’utente per visualizzare file di testo.

       EDITOR/VISUAL
              L’utilità preferita dall’utente per editare file di testo.

       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(3), putenv(3), setenv(3), e unsetenv(3).

       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 LANG, LANGUAGE,  NLSPATH,  LOCPATH,  LC_ALL,  LC_MESSAGES,
       ecc. influenzano l’uso delle localizzazioni, cf.  locale(5).

       TMPDIR influenza il prefisso del percorso di nomi creati da tmpnam(3) 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(3) è influenzato dalle variabili MALLOC_*.

       La  variabile  HOSTALIASES dà il nome di un file contenente degli alias
       da usare con gethostbyname(3).

       TZ e TZDIR dà informazioni sulla zona  di  fuso  orario  utilizzata  da
       tzset(3) e, attraverso questa, da funzioni come ctime(3), localtime(3),
       mktime(3), strftime(3).  Vedere anche tzselect(8).

       TERMCAP dà informazioni su come indirizzare un dato terminale (o dà  il
       nome di un file contenente tali informazioni).

       COLUMNS   e  LINES  informa  le  applicazioni  sulla  dimensione  della
       finestra, forse sovrascrivendo la dimensione attuale.

       PRINTER o LPDEST può specificare la stampante che  si  desidera  usare.
       Vedere lpr(1).

       Ecc.

BACHI

       Qui  c’è chiaramente un rischio di sicurezza.  Molti comandi di sistema
       sono stati indotti a fare danni da un  utente  che  specificava  valori
       insoliti per IFS o LD_LIBRARY_PATH.

       C’è  anche  il rischio di un inquinamento dello spazio nome.  Programmi
       come make e  autoconf  permettono  la  sovrascrittura  dei  nomi  delle
       utility di default dall’ambiente con variabili dal nome simile cambiato
       in maiuscole/minuscole.  In questo modo esse usano CC  per  selezionare
       il  compilatore C desiderato (e similarmente MAKE, AR, AS, FC, LD, LEX,
       RM, YACC, ecc.).  Tuttavia in alcuni usi  tradizionali  tale  variabile
       d’ambiente  dà  opzioni al programma invece di un nome di percorso.  In
       questo modo uno  ha  MORE,  LESS,  e  GZIP.   Tale  uso  è  considerato
       scorretto,  e  deve  essere evitato nei nuovi programmi.  Gli autori di
       gzip devono pensare di rinominare la loro opzione a GZIP_OPT.

VEDERE ANCHE

       bash(1), csh(1),  login(1),  sh(1),  tcsh(1),  execve(2),  clearenv(3),
       exec(3), getenv(3), putenv(3), setenv(3), unsetenv(3), locale(5)

COLOPHON

       Questa  pagina  fa  parte  del  rilascio 2.76 del progetto man-pages di
       Linux.  Si può trovare una descrizione del progetto, e informazioni  su
       come riportare bachi, presso http://www.kernel.org/doc/man-pages/.  Per
       la   traduzione   in   italiano   si    può    fare    riferimento    a
       http://www.pluto.it/ildp/collaborare/