Provided by: manpages-it_4.21.0-2_all bug

NOME

       environ - ambiente dell'utente

SINTASSI

       extern char **environ;

DESCRIZIONE

       La  variabile  environ  si  riferisce  a un array di puntatori a stringhe chiamato l'«ambiente». L'ultimo
       puntatore di questo array ha valore NULL. Questo array di stringhe è reso disponibile al  processo  dalla
       chiamata  di  sistema  execve(2)  quando viene eseguito un nuovo programmaQuando viene creato un processo
       figlio tramite fork(2), esso eredita una copia dell'ambiente del suo genitore.

       By convention, the strings in environ have the form "name=value". The name is case-sensitive and may  not
       contain  the  character  "=". The value can be anything that can be represented as a string. The name and
       the value may not contain an embedded null byte ('\0'), since this is assumed to terminate the string.

       Le  variabili  d'ambiente  possono  essere  messe  nell'ambiente  di  shell  dal  comando  export  e   da
       `"nome=valore" in sh(1), o dal comando setenv se si usa csh(1).

       L'ambiente  iniziale  della  shell  è  riempito  in diversi modi, tra i quali le definizioni contenute in
       /etc/environment che sono elaborate da pam_env(8) per tutti gi utenti al momento del  login  (su  sistemi
       che impiegano pam(8)). In aggiunta, vari script di inizializzazione della shell, come lo script a livello
       globale  /etc/profile  e  lo  script  delle  inizializzazioni  per  utente  possono includere comandi che
       aggiungolo variabili all'ambiente della shell; per i dettagli vedere la pagina  di  manuale  della  shell
       preferita.

       Le shell in stile Bourne riconoscono la sintassi

           NAME=value command

       per  creare una definizione di variabile d'ambiente solo nell'ambito del processo che esegue comando. Più
       definizioni di variabile, separate da spazi bianchi, possono precedere comando.

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

       What follows is a list of environment variables typically seen on a system. This list is  incomplete  and
       includes  only  common variables seen by average users in their day-to-day routine. Environment variables
       specific to a particular program or library function are documented in the  ENVIRONMENT  section  of  the
       appropriate manual page.

       USER   Il  nome  dell'utente  collegato  (usato  da  programmi derivati da BSD). Impostato al momento del
              login, vedi NOTE più avanti.

       LOGNAME
              Il nome dell'utente collegato (usato da programmi derivati da System V). Impostato al momento  del
              login, vedi NOTE più avanti.

       HOME   La directory di login dell'utente. Impostata al momento del login, vedi NOTE più avanti.

       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 e LC_TIME (vedi locale(7) per ulteriori dettagli
              sulle variabili d'ambiente LC_*).

       PATH   The sequence of directory prefixes that sh(1)  and many other programs employ when  searching  for
              an  executable  file  that  is  specified  as a simple filename (i.a., a pathname that contains no
              slashes). The prefixes are separated by  colons  (:).  The  list  of  prefixes  is  searched  from
              beginning  to  end,  by  checking  the pathname formed by concatenating a prefix, a slash, and the
              filename, until a file with execute permission is found.

              As a legacy feature, a zero-length prefix (specified as two adjacent  colons,  or  an  initial  or
              terminating  colon)   is  interpreted  to mean the current working directory. However, use of this
              feature is deprecated, and POSIX notes  that  a  conforming  application  shall  use  an  explicit
              pathname (e.g., .) to specify the current working directory.

              Analogamente  a  PATH, CDPATH è usato da  alcune shell per trovare la destinazione di un cambio di
              directory, MANPATH è usato da man(1) per trovare pagine di manuale, e così via).

       PWD    Absolute path to the current working directory; required to be partially canonical  (no  .  or  ..
              components).

       SHELL  The absolute pathname of the user's login shell. Set at login time, see section NOTES below.

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

       PAGER  The  user's  preferred  utility  to  display text files. Any string acceptable as a command-string
              operand to the sh -c command shall be valid. If PAGER is null or is  not  set,  then  applications
              that launch a pager will default to a program such as less(1)  or more(1).

       EDITOR/VISUAL
              The user's preferred utility to edit text files. Any string acceptable as a command_string operand
              to the sh -c command shall be valid.

       Si  noti  che il comportamento di molti programmi e routine delle librerie è influenzato dalla presenza o
       dal valore di alcune variabili d'ambiente. Gli esempi comprendono:

       •  Le variabili LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES eccetera, influenzano  l'uso  delle
          localizzazioni; si veda catopen(3), gettext(3) e locale(7).

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

       •  LD_LIBRARY_PATH,  LD_PRELOAD  e  altre  variabili  LD_* influenzano il comportamento del loader/linker
          dinamico. Si veda anche ld.so(8).

       •  POSIXLY_CORRECT fa seguire ad alcuni programmi e 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).

NOTE

       Historically and by standard, environ must be declared in the user program. However, as  a  (nonstandard)
       programmer convenience, environ is declared in the header file <unistd.h> if the _GNU_SOURCE feature test
       macro is defined (see feature_test_macros(7)).

       Le operazioni PR_SET_MM_ENV_START e PR_SET_MM_ENV_END di prctl(2) possono essere usate per controllare la
       posizione dell'ambiente dei processi.

       The  HOME,  LOGNAME,  SHELL, and USER variables are set when the user is changed via a session management
       interface, typically by a program such as login(1)  from a user database (such as passwd(5)).  (Switching
       to  the root user using su(1)  may result in a mixed environment where LOGNAME and USER are retained from
       old user; see the su(1)  manual page.)

BUG

       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,  etc.).  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 e
       LESS. Tale uso è considerato scorretto, e deve essere evitato nei nuovi programmi.

VEDERE ANCHE

       bash(1), csh(1), env(1), login(1), printenv(1), sh(1), su(1), tcsh(1), execve(2),  clearenv(3),  exec(3),
       getenv(3), putenv(3), setenv(3), unsetenv(3), locale(7), ld.so(8), pam_env(8)

TRADUZIONE

       La   traduzione   italiana   di   questa  pagina  di  manuale  è  stata  creata  da  Giovanni  Bortolozzo
       <borto@dei.unipd.it>, Alessandro  Rubini  <rubini@linux.it>,  Ottavio  G.  Rizzo  <rizzo@pluto.linux.it>,
       Giulio Daprelà <giulio@pluto.it>, Elisabetta Galli <lab@kkk.it> e Marco Curreli <marcocurreli@tiscali.it>

       Questa  traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o successiva
       per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

       Per segnalare errori nella traduzione  di  questa  pagina  di  manuale  inviare  un  messaggio  a  pluto-
       ildp@lists.pluto.it.

Linux man-pages 6.03                             5 febbraio 2023                                      environ(7)