Tengo un archivo de salida de ejemplo con el siguiente contenido:
ent_status_code,time_stamp) using btree in table ;
user_id,ent_no) using btree in table ;
agent_code,ent_no) using btree in table ;
ent_no,change_ind_code) using btree in table ;
change_ind_code) using btree in table ;
using btree in table ;
using btree in table ;
ent_no) using btree in table ;
ent_status_code,time_stamp) using btree in table ;
user_id,ent_no) using btree in table ;
agent_code,ent_no) using btree in table ;
ent_no,change_ind_code) using btree in table ;
change_ind_code) using btree in table ;
using btree in table ;
using btree in table ;
ent_no) using btree in table ;
using btree in table ;
using btree in table ;
ent_no) using btree in table ;
Mi objetivo es reemplazar la penúltima columna, que en este caso estable
; sin embargo, esa columna no es única, por lo que no tiene por qué serlo.table
. Me gustaría reemplazar esto condatadbs
Respuesta1
La NF
variable especial awk
contiene el número de campos delimitados por espacios en la línea actual. Por lo tanto, $(NF-1)
será el penúltimo campo, por lo que solo puedes hacer:
awk 'NF>1 && $(NF-1) = "datadbs"' file