📄 iffe
字号:
"else") case $ifelse in KEEP) ifelse=DONE ;; SKIP|TEST) ifelse=KEEP ;; NONE) echo "$command: $file$line: $1: no matching if" >&$stderr exit 1 ;; esac shift ;; "endif")case $ifelse in NONE) echo "$command: $file$line: $1: no matching if" >&$stderr exit 1 ;; esac case $shell in ksh) ifelse=${ifstack%%:*} ifstack=${ifstack#*:} ;; *) eval `echo $ifstack | sed 's,\([^:]*\):\(.*\),ifelse=\1 ifstack=\2,'` ;; esac shift ;; *) break ;; esac done # check if "run xxx" is equivalent to "set in xxx" case $1 in "("*) set exp - "$@" ;; *.iffe|*.iff) set run "$@" ;; esac case $1 in :) shift continue ;; run) case $shell in bsh) case $2 in */*) x=`echo $2 | sed -e 's,.*[\\\\/],,'` ;; *) x=$2 ;; esac ;; *) eval 'x=${2##*[\\/]}' ;; esac case $x in *.iffe|*.iff) set set in $2 ;; *.*) ;; *) set set in $2 ;; esac ;; esac # { include set } drop out early case $1 in ""|"#"*)continue ;; include)case $ifelse in DONE|SKIP) set ''; shift; continue ;; esac shift case $# in 0) echo "$command: $file$line: include path expected" >&$stderr exit 1 ;; esac p=$1 shift if test ! -f $p then echo "$command: $file$line: $p: include file not found" >&$stderr exit 1 fi case $# in 0) case $config in 1) e="^HAVE_" ;; *) e="^_" ;; esac ;; 1) e=$1 ;; *) shift echo "$command: $file$line: warning: $*: include operands ignored" >&$stderr ;; esac eval `sed -e '/^#define[ ]/!d' -e 's/#define[ ]//' -e 's/[ (].*//' ${e:+"-e/$e/!d"} -e 's/.*/&=1/' $p | sort -u` continue ;; set) case $ifelse in DONE|SKIP) set ''; shift; continue ;; esac shift case $1 in ""|"#"*)op= ;; *) arg= op=$1 case $op in --*) case $shell in bsh) op=`echo '' $op | sed 's/.*--//'` ;; *) op=${op#--} ;; esac ;; -*) case $op in -??*) case $shell in bsh) arg=`echo '' $op | sed 's/-.//'` op=`echo '' $op | sed 's/\\(-.\\).*/\\1/'` ;; *) arg=${op#-?} op=${op%$arg} ;; esac ;; esac case $op in a) op=all ;; c) op=cc ;; C) op=config ;; d) op=debug ;; D) op=define ;; E) op=explicit ;; i) op=input ;; I) op=include ;; L) op=library ;; o) op=output ;; e) op=package ;; p) op=prototyped ;; P) op=pragma ;; r) op=regress ;; s) op=shell ;; S) op=static ;; u) op=undef ;; v) op=verbose ;; x) op=cross ;; X) op=exclude ;; esac ;; esac shift while : do case $# in 0) break ;; esac case $1 in *" "*) shift continue ;; ""|"#"*)break ;; :) shift break ;; esac case $arg in "") arg=$1 ;; *) arg="$arg $1" ;; esac shift done ;; esac case $op in all) all=1 continue ;; cc) occ= for x in $arg do case $occ in "") case $x in *=*) case $shell in bsh) eval $x export `echo $x | sed -e 's/=.*//'` ;; *) export $x ;; esac ;; *) occ=$x ;; esac ;; *) occ="$occ $x" ;; esac done exclude occ continue ;; config) config=1 continue ;; cross) case $arg in ""|-) cross= ;; *) cross="$arg" libpaths= ;; esac continue ;; debug) debug=$arg case $arg in 0) exec 2>&$nullout set - show=echo SHOW= ;; ""|1) exec 2>&$stderr set - show=echo SHOW= ;; 2|3) exec 2>&$stderr case $shell in ksh) eval 'PS4="${PS4%+*([ ])}+\$LINENO+ "' esac show=echo SHOW= set -x ;; *) echo "$command: $arg: debug levels are 0, 1, 2, 3" >&$stderr ;; esac continue ;; define) define=1 continue ;; exclude)case $arg in ""|-) excludes= ;; *) excludes="$excludes $arg" ;; esac exclude includes occ continue ;; explicit) explicit=1 continue ;; "in"|input) case $arg in "") in=- ;; *) in=$arg if test ! -r $in then echo "$command: $in: not found" >&$stderr exit 1 fi exec < $in file=$in: case $out in "") case $in in *[.\\/]*) case $shell in bsh) eval `echo $in | sed -e 's,.*[\\\\/],,' -e 's/\\.[^.]*//' -e 's/^/out=/'` ;; *) eval 'out=${in##*[\\/]}' eval 'out=${out%.*}' ;; esac ;; *) out=$in ;; esac ;; esac ;; esac continue ;; include)case $arg in ""|-) includes= ;; *) includes="$includes -I$arg" ;; esac exclude includes continue ;; library)for y in $libpaths do eval $y=\"\$$y:\$arg\$${y}_default\" eval export $y done continue ;; nodebug)exec 2>&$nullout set - continue ;; nodefine) define=0 continue ;; out|output) out=$arg defhdr= usr= deflib= one= puthdr= putlib= case $op in output) continue ;; esac def= test= ;; package)protoflags="$protoflags -e $arg" continue ;; prototyped|noprototyped) pragma="$pragma $op" continue ;; pragma) pragma="$pragma $arg" continue ;; regress)regress=1 version=1995-03-19 continue ;; shell) case $arg in osh) posix_read=-no shell=bsh ;; esac shell=$arg continue ;; static) static=$arg continue ;; undef) undef=1 continue ;; verbose)verbose=1 continue ;; *) echo "$command: $op: unknown option" >&$stderr exit 1 ;; esac ;; *) case $2 in '=') def=$1 shift shift ;; *) case $1 in '-'|'?')def=- shift ;; *) def= ;; esac ;; esac case $1 in '!') not=1 shift ;; *) not= ;; esac case $1 in *'{') op=- ;; '('*|'"'*'"'|'<'*'>') op=exp case $def in '') def=- ;; esac ;; *) op=$1 shift ;; esac arg= cc="$occ $includes" fail= hdr= lib= mac= no= note= opt= pass= pth= run= set= src= test= yes= case $op in pth) lst=$op ;; *) lst=hdr ;; esac case $# in 0) ;; *) case $1 in "#"*) set x shift ;; *) case $op in ref) ;; *) case $1 in '('*|*'{'|'"'*'"'|'<'*'>') arg=- ;; '-') case $2 in -*) arg=$1 shift ;; *) def=- shift case $1 in '('*|*'{'|'"'*'"'|'<'*'>') arg=- ;; *) arg=$1 case $# in 0) ;; *) shift ;; esac ;; esac ;; esac ;; *) arg=$1 shift ;; esac ;; esac ;; esac case $1 in '('*|'"'*'"'|'<'*'>') while : do case $# in 0) break ;; esac case $1 in *[.{}]*)break ;; esac case $test in '') test=$1 ;; *) test="$test $1" ;; esac shift done case $arg in '') arg=- ;; esac case $op in exp) case $def in ''|'-') ;; *) arg=$def ;; esac ;; esac ;; esac sline=$line while : do case $# in 0) break ;; esac case $1 in "") ;; "#"*) set x ;; "=") shift set=$* case $set in "") set=" " ;; esac while : do case $# in 0) break ;; esac shift done break ;; [abcdefghijklmnopqrstuvwxyz]*'{'|'{') v=$1 shift x= case $v in "note{") sep=" " ;; *) sep=$nl ;; esac case $v in '{') e='}' ;; *) e='}end' ;; esac n=1 SEP= while : do case $# in 0) case $posix_read in -*) checkread ;; esac case $in in "") echo "$command: $file$line: missing }end" >&$stderr exit 1 ;; esac while : do case $posix_read in 1) case $shell in ksh) IFS= read -r lin eof=$? case $lin in *[' ']'#'*) lin="${lin##*([' '])}" ;; *) lin="${lin#[' ']}" ;; esac ;; *) IFS= read -r lin eof=$? IFS=$ifs case $lin in [' ']*) lin=`sed -e 's,^[ ],,' -e 's,^[ ]*#,#,' <<!$lin!` ;; esac ;; esac ;; *) lin=`$posix_read` eof=$? ;; esac case $eof in 0) case $shell in ksh) let line=line+1 ;; *) line=`expr $line + 1` ;; esac $posix_noglob set x $lin $posix_glob case $2 in $v) case $shell in ksh) let n=n+1 ;; *) n=`expr $n + 1` ;; esac ;; $e|$e';') case $n in 1) shift break 2 ;; esac case $shell in ksh) let n=n-1 ;; *) n=`expr $n - 1` ;; esac ;; esac x="$x$SEP$lin" SEP=$sep ;; *) echo "$command: $file$line: missing $e" >&$stderr exit 1 ;; esac done ;; esac case $1 in $v) case $shell in ksh) let n=n+1 ;; *) n=`expr $n + 1` ;; esac ;; $e|$e';') case $n in 1) break ;; esac case $shell in ksh) let n=n-1 ;; *) n=`expr $n - 1` ;; esac ;;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -