I\'m running this awk program :
awk -F: \'{if($1==\"waheed\") {$2=1;print $0}}\' /etc/passwd
and the output is:
mysql 1 118 129
In awk output is seperated by the contents of the OFS ( output field seperater ) variable a space by default. This can be set with -v OFS=':'
awk -F : -v OFS=':' '{ cmds}' file
you can directly use awk command like this :
awk 'BEGIN{OFS=":"} {your code here}'
all codes in begin quotes runs only onetime
and the -v option is for to trans your parameter into your scripts. like:
awk '{print $pid_doc}' -v pid_doc="$Param"
and this $Param can be given from your shell script