EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
Unix编程相关配置0 T- X6 G" g6 V' v% o" l9 c- g, |
( H; V7 Q( |: T. ~1 p1 d4 O; s6 o什么应是可配置的
! X' ^/ W9 Q& r8 A6 U4 u- Unix提倡建立机制而把策略决定权留给用户,往往会导致选项过多。; l' T9 g/ f6 P6 t
- 不应该配置:4 j# `( W. S3 K' t5 o
' l7 i+ B8 P& W8 M3 T3 w2 J
- 能够可靠自动检测的东西;
) i4 p5 [$ F3 F3 A+ m6 m+ ~) ? - 用户不应该看到优化开关;! D- a: Q" Z. ?
- 能用脚本包装器或简单管道完成的任务,就不要使用配置开关实现。
% R$ K% T6 y. b1 [: q8 o2 |9 k, ?5 [8 J9 e6 u' B* Y7 `. \7 X
) H# ?0 c2 o* Q( k配置放在哪里
9 n, f. u0 T" _* a/ c1 {- /etc目录:管理员设置的系统级选项
8 O- e. n& E3 S0 J8 V" e* X( l, v$ g! q/ L& Z5 u. h
- 支持#开头的注释
! e, E2 f7 F6 B7 k5 V - 不去别隐匿的空白符
) `( u( N8 e2 y) o8 A - 多个连续的空行视为单个空行: x" ~- @( r z: @* Q
- 词法上把文件视作简单的用空白符分割的标记序列,或多行标记,但支持以字符串语法对内嵌空白符的标记. i p n/ D$ P+ ?$ V2 u( C5 n' k
- 支持\转义
( e9 b4 D! N4 v" p. V9 Z
, l* H1 _, E7 f9 G9 I. C; N6 L; o
1 d+ p3 b: l# p/ Q
- 环境变量:管理员设置的系统级选项
# J8 z4 }8 X% j: | - 用户主目录的点文件:用户控制的选项
/ F! A& o+ N; q, n$ r& m1 Y - 用户设置的环境变量:大量程序共享、独立于应用程序的选项
$ |+ k( q" s! y - 程序的命令行参数:调用时可能发生变化的选项( u1 v; g+ Z" |1 N( d/ V
3 W. e% L% d1 X, H# i( v 0 y3 a" F W5 {
注意:环境变量通常覆盖点文件的设置,但又可能被命令行选项覆盖。 & i- B& O$ i- p: P y
|