- 论坛徽章:
- 6
|
回复 1# qq3138298 - BEGIN{
- FS="="
- delimStart="${"
- delimStartLen=2
- delimEnd="}"
- delimEndLen=1
- }
- function substVars(){
- line=$0
- rs=""
- start=0
- i=0
- end=0
- while(1){
- start=index(line,delimStart)
- if(start==0){
- if(!i){
- return $0
- }else{
- return rs substr(line,i)
- }
- }else{
- rs=rs substr(line,i,start-1)
- end=index(line,delimEnd)
- if(!end && !i){
- return $0
- }else{
- rs=rs keyvalue[substr(line,start+delimStartLen,end-start-delimStartLen)]
- line=substr(line,end+delimEndLen)
- i=1
- }
- }
- }
- }
- NR==FNR{
- keyvalue[$1]=$2
- next
- }
- {
- print substVars()
- }
复制代码 |
|