version.sh

来自「<B>Digital的Unix操作系统VAX 4.2源码</B>」· Shell 代码 · 共 64 行

SH
64
字号
: run this script through /bin/sh: '@(#)$Id: version.sh,v 1.2 90/11/25 18:57:38 sharpe Exp $'case $# in  0) set "6.6";;esacOFS="$IFS" IFS=:for A in rprompt hostname uname whodo    for D in $PATH    do	if [ ! -f $D/$A ]; then	    continue	fi	case $A in	    rprompt)    LOCAL=`$A %h`			;;	    hostname)   LOCAL=`$A`			;;	    uname)	LOCAL=`$A -n`			;;	    who)	LOCAL=`$A am i | sed -e 's%^\(.*\)!.*$%\1%'`			;;	esac	break    done    if [ "x$LOCAL" != x ]; then	break    fidoneIFS=" "Patch="../Patchlevel"if [ ! -r version  ]; then echo "0" > version; fiif [ ! -r ${Patch} ]; then Patch="" ; firm -f version.ccat version ${Patch} |\awk -F. 'BEGIN	{ split ("'"${1}"'", ver, ".");\	  major = ver[1]; minor = ver[2]; patch = ver[3]}\NR == 1 { local = $(NF) }\NR == 2 { patch = $(NF) }\END	{ local++;\	  if (patch > 0) {\	  printf "char *version = \"MH %s.%s.%s #%d[UCI] ", \		major, minor, patch, local > "version.c"; \	  printf ".ds MH %s.%s.%s #%d[UCI]\n", \		major, minor, patch, local > "../doc/version.rf"; \	  printf "MH %s.%s.%s #%d[UCI]\n", major, minor, patch, local ;\	} else {\	  printf "char *version = \"MH %s.%s #%d[UCI] ", \		major, minor, local > "version.c"; \	  printf ".ds MH %s.%s #%d[UCI]\n", \		major, minor, local > "../doc/version.rf"; \	  printf "MH %s.%s #%d[UCI]\n", major, minor, local ;\	}\	  printf "%s.%s.%s.%d\n", major, minor, patch, local > "_version";\}' && mv _version versionecho '('$LOCAL') of '`date`'";' >> version.c

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?