My input file gfile values is CTRY=GM&PROJTYPE=SP&PROJECTTYPE=Small+Project
If i am giving PROJECTTYPE then it must give Small Project
awk -F"&" '{for (i=1; i<=NF; i++) if ($i ~ "^"PAT) {sub ("^"PAT"=", "", $i); sed 's/'+'/""/' $i ; print $i }}' PAT=$1 /home/dstoret/Migration_team/Nagesh/gfile
However getting syntax error,
Jotne
2
echo "CTRY=GM&PROJTYPE=SP&PROJECTTYPE=Small+Project" | awk -F= '/PROJECTTYPE/ {print $4}'
Small+Project
1 Like
awk -F"&" '{for (i=1; i<=NF; i++) if ($i ~ "^"PAT) {sub ("^"PAT"=", "", $i);sub (/\+/, "", $i); print $i}}' PAT=$1 filename
1 Like
Thanks, Can't we use sed ?
PikK45
5
Try this,
sed -n 's/.*PROJECTTYPE=\(.*\)$/\1/p'
or if you want that to be in a variable
sed -n "s/.*$var=\(.*\)$/\1/p"
1 Like
$ cat file
CTRY=GM&PROJTYPE=SP&PROJECTTYPE=Small+Project
$ cat test.sh
pattern=$1
sed "s/.*\<$pattern\>=\([^&]*\)&*.*/\1/" file | tr "+" " "
$ ./test.sh PROJECTTYPE
Small Project
1 Like