awktest.sh

来自「一个awk和bsh混合编程的例子」· Shell 代码 · 共 49 行

SH
49
字号
#!/usr/bin/kshREPORT_FILE_NAME=REP6_716_20080625092336_1ATTRIBUTES="\$FDN:userlabel:aaa"REPORT_ID=19Attr_Names="userLabel etId implSt"Attr_Types="userLabel:STR etId:INT implSt:ENUM"	if [ -f "$REPORT_FILE_NAME" ]; then	{			echo "aaa" |awk '{			num=extractAttrs(required_attrs, attrs, ":");						for (x=1;x<=num;x+=1)			{				printf "%s -- %s\n", x,attrs[x];			}				}		function extractAttrs(in_string,array,seperator) {			ix=1;			attrs_string_tmp=in_string;			pos_sep_req=index(attrs_string_tmp,seperator);			while (pos_sep_req != 0 && length(attrs_string_tmp) !=0)			{				attr_str=substr(attrs_string_tmp,1,pos_sep_req-1);				array[ix]=attr_str;				ix+=1;				attrs_string_tmp=substr(attrs_string_tmp,pos_sep_req+1);				pos_sep_req=index(attrs_string_tmp,seperator);			}			if (length(attrs_string_tmp) !=0)			{				attr_str=substr(attrs_string_tmp,1);				array[ix]=attr_str;			}			else			{				ix-=1;			}			return ix;		}		' required_attrs="$ATTRIBUTES" additional_attr="$Attr_Names" additional_type="$Attr_Types";			}	else	{		echo "ERROR: $REPORT_FILE_NAME not exist";	}	fi

⌨️ 快捷键说明

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