environ 7 2024

中文man手册

environ

åç§°
æ¦è¿°
æè¿°
夿³¨
缺é·
åè§
è·

åç§°

environ - ç¨æ·ç¯å¢

æ¦è¿°

extern char **environ;

æè¿°

åé environ æåä¸ä¸ªå卿éçæ°ç»ï¼è¿äºæéæå被称为âç¯å¢ï¼environmentï¼âçå- ç¬¦ä¸²ãæ°ç»ä¸æåä¸ä¸ªæéçå¼ä¸º NULLã该å符串æ°ç»å¨æ°ç¨åºå¯å¨æ¶è¢« execve(2) è°ç¨æä¾ç»è¿ç¨ãå½åè¿ç¨è¢« fork(2) å建æ¶ï¼å®ç»§æ¿å¶ç¶è¿ç¨ç¯å¢çä¸ä»½å¯æ¬ã

ä¹ æ¯ä¸çº¦å®å¨ environ ä¸çå符串æç±»ä¼¼âåç§°=å¼âçå½¢å¼ãå¶ä¸- çåç§°æ¯å¤§å°åææçï¼ä¸ä¸è½åå«å符â=âãå¶ä¸çå¼å¯ä»¥ä¸ºä»»ä½å- 符串å¯ä»¥è¡¨ç¤ºçææ¬ãåç§°åå¼ä¸è½åå«ååµç空åèå符ï¼'\0'ï¼ï¼ä»¥æ- ¤é¿åå¶è¢«è¯¯è®¤ä¸ºåç¬¦ä¸²ç»æ¢ä½ç½®ã

ç¯å¢åéå¯ç± sh(1) ä¸ç export å½ä»¤å¨ shell çç¯å¢ä¸è¢«è®¾å®ï¼æèå¨ä½¿ç¨ csh(1) æ¶ä½¿ç¨ setenv å½ä»¤ã

对 shell æ¥è¯´ï¼å¶åå§çç¯å¢ç¸å³åéå¯ç»ç±å¤ç§æ¹å¼è¢«å¡«åï¼å¦å¨ä½¿ç¨äº pam(8) çç³»ç»ä¸ï¼pam_env(8) ä¼å¯¹ææç¨æ·å¨ç»å½æ¶å¯ç¨ /etc/environment ä¸çå®ä¹ã餿¤ä¹å¤ï¼è®¸å¤ shell åå§åèæ¬ï¼å¦ç³»ç»å±çº§ç /etc/profile èæ¬ååä¸ªç¨æ·çåå§åèæ¬ï¼å¯è½åå«ä¸äºä¼å shell çç¯å¢ä¸- æ·»å åéçå½ä»¤ï¼è¯·åèæ¨ä½¿ç¨ç shell çæå页äºè§£è¯¦ç»ä¿¡æ¯ã

Bourne 飿 ¼ç shell æ¯æä¸é¢çè¯æ³

åç§°=å¼ å½ä»¤

å®å¯è¢«ç¨æ¥ä»å¨æ§è¡ å½ä»¤ æ¶å建对åºçç¯å¢åéå®ä¹ãå¨ å½ä»¤ ä¹åï¼å¯ä»¥å- å¨å¤ä¸ªåéå®ä¹ï¼å¶é´ä½¿ç¨ç©ºæ ¼è¿è¡åéã

åæ°è¿å¯ä»¥å¨è°ç¨ exec(3)æ¶è¢«æ¾ç½®äºç¯å¢ä¹ä¸ãC ç¨åºå¯ä»¥ä½¿ç¨è¯¸å¦ getenv(3), putenv(3), setenv(3) å unsetenv(3) ç彿°æçºµå¶ç¯å¢ã

æ¬æçä¸è¿°é¨åååºäºç³»ç»ä¸å¸¸è§çç¯å¢åéãè¿ä¸ªå表并ä¸å®æ´ï¼ä¸ä»å嫿®éç¨æ·å¨æ¥å¸¸ä½¿ç¨ä¸- 常è§çåéãç¹å®ç¨åºæè½¯ä»¶åºå½æ°æä½¿ç¨çç¯å¢åéé常ä¼å¨å¶å¯¹åºçæå页ä¸- çâç¯å¢âä¸èä¸è¿è¡æè¿°ã

USER

å·²ç»å½ç¨æ·çåç§°ï¼è¢«æäº BSD è¡ççç¨åºæä½¿ç¨ï¼ãå¶å¨ç»å½æ¶è¢«è®¾ç½®ï¼è¯·è§ä¸æç夿³¨ä¸èã

LOGNAME

å·²ç»å½ç¨æ·çåç§°ï¼è¢«æäº System-V è¡ççç¨åºæä½¿ç¨ï¼ãå¶å¨ç»å½æ¶è¢«è®¾ç½®ï¼è¯·è§ä¸æç夿³¨ä¸èã

HOME

ç¨æ·ç»å½æ¶çç®å½ãå¶å¨ç»å½æ¶è¢«è®¾ç½®ï¼è¯·è§ä¸æç夿³¨ä¸èã

LANG

ç¨äºè¯è¨ååºå设置类å«çåç§°ï¼å®å¨æªè¢« LC_ALL ææ´å·ä½çç¯å¢åéï¼å¦ LC_COLLATE, LC_CTYPE, LC_MESSAGES, LC_MONETARY, LC_NUMERIC å LC_TIME æè¦çæ¶çæï¼è¯·åè§ locale(7) 以äºè§£ LC_* ç¯å¢åéçå·ä½ç»èï¼ã

PATH

宿¯ä¸ç³»åç®å½åç¼ï¼å¯è¢« sh(1) å许å¤å¶ä»ç¨åºæä½¿ç¨ä»¥æç´¢ç±ç®åçæä»¶åï¼å³ä¸å«ææçº¿çè·¯å¾åï¼ææå®ç坿§è¡æä»¶ãå个åç¼ä¹é´è¢«åå·ï¼:ï¼æåéãæ´ä¸ªåç¼å表ä¼è¢«ä»åå°åè¿è¡æç´¢ï¼ç¨åºä¼æ£æ¥ç»å®è·¯å¾åå¨éååç¼ãæçº¿åæä»¶åä¹åçè·¯å¾æ¯å¦å- å¨ï¼ç´å°æ¾å°ä¸ä¸ªç¬¦åæ¡ä»¶ç坿§è¡æä»¶ä¸ºæ¢ã

è¿å- å¨ä¸ä¸ªéççç¹æ§ï¼å¦æåç¼é¿åº¦ä¸ºé¶ï¼å³ç±ä¸¤ä¸ªç¸é»çåå·ç»æï¼æèæèµ·å§æç»æ- ¢ä½ç½®çåå·å- å¨ï¼ï¼è¯¥åç¼ä¼è¢«è§£é为æå®å½åå·¥ä½ç®å½ãç¶èï¼å½å已䏿¨è使ç¨è¯¥ç¹æ§ï¼ä¸ POSIX 认为ä¸ä¸ªç¬¦åæ åçåºç¨ç¨åºåºå½ä½¿ç¨æ¾å¼çè·¯å¾åï¼å¦ .ï¼æ¥æå®å½åå·¥ä½ç®å½ã

类似 PATHï¼è¿åå¨ CDPATH ä¼è¢«æäº shell ç¨æ¥å¯»æ¾æ´æ¹ç®å½æä»¤çç®æ ç®å½ï¼ä»¥å被 man(1) æä½¿ç¨å¯»æ¾æå页ç MANPATHï¼ççã

PWD

å½åå·¥ä½ç®å½çç»å¯¹è·¯å¾ãå®çç»æé¨åå¿é¡»è¢«è§èåï¼å³ä¸å¯åºç° . æ .. çè·¯å¾é¨åï¼ã

SHELL

ç¨æ·ç»å½ shell çç»å¯¹è·¯å¾åãå¶å¨ç»å½æ¶è¢«è®¾ç½®ï¼è¯·è§ä¸æç夿³¨ä¸èã

TERM

è¾åºåºå½å¼å®¹çç»ç«¯ç±»åã

PAGER

ç¨æ·åå¥½çæ¾ç¤ºææ¬æä»¶çå®ç¨å·¥å·ãå¯è¢«è®¾ç½®ä¸ºä»»ä½ sh -c å½ä»¤å¯æ¥åçå½ä»¤å符串æä½ç¬¦ã妿 PAGER çå¼ä¸ºç©ºææªè¢«è®¾ç½®ï¼åå¯å¨å页å¨çåºç¨ç¨åºä¼é»è®¤éæ©ä¸ä¸ªç¨åºï¼å¦ less(1) æ more(1)ã

EDITOR/VISUAL

ç¨æ·å好使ç¨çç¼è¾ææ¬æä»¶çå·¥å·ãå¯è¢«è®¾ç½®ä¸ºä»»ä½ sh -c å½ä»¤å¯æ¥åçå½ä»¤å符串æä½ç¬¦ã

请注æï¼è®¸å¤ç¨åºå软件åºä¾ç¨çè¡ä¸ºé½ä¼åå°ç¹å®ç¯å¢åéå- å¨ä¸å¦åå¶åå¼çå½±åãä¸é¢ç»åºä¸äºä¾åï¼

LANG, LANGUAGE, NLSPATH, LOCPATH, LC_ALL, LC_MESSAGES ççåéä¼å½±åè¯- è¨ååºå设置çå¤çï¼è¯·åè§ catopen(3), gettext(3) å locale(7)ã

TMPDIR å½±åç± tempnam(3) åå¶ä»ä¾ç¨å建çè·¯å¾åç§°çåç¼ï¼ä»¥åç± sort(1) åå¶ä»ç¨åºæä½¿ç¨ç临æ¶ç®å½åã

LD_LIBRARY_PATH, LD_PRELOAD åå¶ä» LD_* åéä¼å½±å卿å è½½å¨/龿¥å¨çè¡ä¸ºã请åè§ ld.so(8)ã

POSIXLY_CORRECT 使å¾ç¹å®çç¨åºå软件åºä¾ç¨éµå¾ª POSIX ææå®çè¡ä¸ºã

malloc(3) çè¡ä¸ºåå° MALLOC_* åéçå½±åã

HOSTALIASES åéç»åºåå« gethostbyname(3) å°è¦ä½¿ç¨ç主æºå«åçæä»¶çåç§°ã

TZ å TZDIR ç»åº tzset(3) æä½¿ç¨çæ¶åºä¿¡æ¯ï¼å¹¶æ¶åè¯¸å¦ ctime(3), localtime(3), mktime(3), strftime(3) ç彿°ãå¦è¯·åè§ tzselect(8)ã

TERMCAP æä¾å¦ä½å¤çç»å®ç»ç«¯çç¸å³ä¿¡æ¯ï¼æèç»åºåå«è¿äºä¿¡æ¯çæä»¶çæä»¶åï¼

COLUMNS å LINES ä¼åç¥åºç¨ç¨åºçªå£å¤§å°ä¿¡æ¯ï¼å®å¯è½ä¼è¦çå®é大å°çéç½®ã

PRINTER æ LPDEST å¯è½æå®è¦ä½¿ç¨çæå°æºãè¯·è§ lpr(1)ã

夿³¨

åå²ä¸ä»¥åæ åä¸ï¼environ å¿é¡»è¢«ç¨æ·ç¨åºæå£°æãç¶èï¼ä¸ä¸ªç°å- ç䏿 åçæ¹ä¾¿ç¨åºåå·¥ä½çæ¹æ³æ¯å° environ 声æå¨ <unistd.h> 头æä»¶ä¸- ï¼åææ¯ _GNU_SOURCE åè½æµè¯å®å·²è¢«å®ä¹ï¼åè§ feature_test_macros(7)ï¼ã

prctl(2) ä¸ç PR_SET_MM_ENV_START å PR_SET_MM_ENV_END æä½å¯è¢«ç¨æ¥æ§å¶è¿ç¨ç¯å¢çä½ç½®ã

HOME, LOGNAME, SHELL å USER åéä¼å¨ç¨æ·ç»ç±ä¼è¯ç®¡ççé¢è¢«åæ´æ¶è¢«è®¾ç½®ãèé常æ¯ç»ç±ç±»ä¼¼ login(1) çç¨åºä»¥åç¨æ·æ°æ®åºï¼ä¾å¦ passwd(5)ï¼æå®æçãï¼ä½¿ç¨ su(1) åæ¢å° root ç¨æ·å¯è½å¯¼è´æ··åçç¯å¢åéï¼å¶ä¸ LOGNAME å USER 被ä¿çä¸ºæ§æç¨æ·çå¼ï¼åè§ su(1) æå页ãï¼

缺é·

徿¾ç¶ï¼è¿ä¸ªæºå¶æå®å¨é£é©ã许å¤ç³»ç»å½ä»¤å¯è¢«ç¨æ·æå®çä¸å寻常ç IFS æ LD_LIBRARY_PATH çå¼ææ¬ºéªã

è¿åå¨å½åç©ºé´æ±¡æçé£é©ãå¦ make å autoconf çç¨åºå许ç¯å¢ä¸- å·æåå®ç¨å·¥å·ç¸åå½åï¼ä½å¨å¤§åï¼çåéè¦çé»è®¤æä½¿ç¨çå·¥å·è·¯å¾ãå æ- ¤ï¼ç¨æ·å¯ä»¥ä½¿ç¨ CC æ¥éæ©æ³è¦ä½¿ç¨ç C ç¼è¯å¨ï¼ç±»ä¼¼å°ï¼è¿æ MAKE, AR, AS, FC, LD, LEX, RM, YACC ççï¼ãç¶èï¼å¨æäºä¼ ç»ç使ç¨åºæ¯ä¸- è¿äºç¯å¢åéè¿ä¼è¢«èµå¼ä¸ºç¨åºé项èéè·¯å¾åï¼ä¾å¦ MORE å LESSãè¿äºç¨æ³è¢«è®¤ä¸ºæ¯é误çï¼åºå½å¨æ°ç¨åºä¸é¿åã

åè§

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)

è·

æ¬é¡µé¢ä¸æçç±ä¸æ man æå页计åæä¾ã
䏿 man æå页计åï¼https://github.com/man-pages-zh/manpages-zh