(echo "abc*****def";echo "def")|awk '/abc/{match($0,"[*]+");a=substr($0,RSTART,RLENGTH);gsub("[*]","-",$a);print substr($0,1,RSTART-1),$a,substr($0,RSTART+RLENGTH);} !/abc/{print}'