У меня есть файл sentry.tmp со структурой
8272275 docliente_up/ant_aux_secciones_mes2 556321
8272276 docliente_up/ant_aux_ufcp_mes1 556322
8272278 docliente_up/ant_aux_ufcp_mes2 556324
8272460 docliente_up/jmn_sms_sevilla 556471
8837577 docliente_bu/do_acumulacion/fecha=20190502 550972
8837578 docliente_tres/do_acumulacion/fecha=20190524 550972
8837579 docliente/do_acumulacion/fecha=20190503 550972
. Мне нравится добавлять слово databases
перед словами, заканчивающимися на _up/
, которые находятся в начале второго столбца, идругие добавляют слово databases_users
.
Примерно так:
8272275 databases/docliente_up/ant_aux_secciones_mes2 556321
8272276 databases/docliente_up/ant_aux_ufcp_mes1 556322
8272278 databases/docliente_up/ant_aux_ufcp_mes2 556324
8272460 databases/docliente_up/jmn_sms_sevilla 556471
8837577 databases_users/docliente_bu/do_acumulacion/fecha=20190502 550972
8837578 databases_users/docliente_tres/do_acumulacion/fecha=20190524 550972
8837579 databases_users/docliente/do_acumulacion/fecha=20190503 550972
У меня есть файл с именем первого слова второго столбца.
$cat init.txt
docliente_up
docliente_bu
docliente_tres
docliente
и я использую этот код, но не могу найти способ сделать это.
for i in `awk '{print $2}' $wkdir/init.txt`
do
if [[ "$i" == *_up ]]
then
awk -v basedatos=$i '{gsub(/$basedatos/,"databases/$basedatos");}1' sentry.tmp >sentry.new
else
awk -v basedatos=$i '{gsub(/$basedatos/,"databases_users/$basedatos");}1' sentry.tmp >>sentry.new
fi
done