ОК, я абсолютный новичок в этом (только начал пытаться кодировать несколько недель go для своей работы), поэтому, пожалуйста, go, не волнуйтесь, мне IM в системе AIX У меня есть file1, file2 и file3 и все они содержат 1 столбец данных (текстовых или числовых).
file1
VBDSBQ_KFGP_SAPECC_PRGX_ACCNT_WKLY
VBDSBQ_KFGP_SAPECC_PRGX_ADDRM_WKLY
VBDSBQ_KFGP_SAPECC_PRGX_COND_WKLY
VBDSBQ_KFGP_SAPECC_PRGX_CUSTM_WKLY
VBDSBQ_KFGP_SAPECC_PRGX_EPOS_DLY
VBDSBQ_KFGP_SAPECC_PRGX_INVV_WKLY
file2
MCMILS03
HGAHJK05
KARNEK93
MORROT32
LAWFOK12
LEMORK82
file3
8970597895
0923875
89760684
37960473
526238495
146407
В каждом из этих файлов будет одинаковое количество строк. У меня есть другой файл с именем "dummy_file", который я хочу вытащить, заменить детали и вставить в новый файл.
WORKSTATION#JOB_NAME
SCRIPTNAME "^TWSSCRIPTS^SCRIPT"
STREAMLOGON "^TWSUSER^"
-job JOB_NAME -user USER_ID -i JOB_ID
RECOVERY STOP
В этом файле меня интересуют только 3 строки, которые я хочу заменить, и они всегда будут одинаковыми для фиктивных файлов, которые я буду использовать в будущем
JOB_NAME
JOB_ID
USER_ID
Есть 2 записи для JOB_NAME и только 1 для остальных. Я хочу взять необработанный файл, заменить обе записи JOB_NAME на строку 1 из файла1, затем заменить USER_ID на строку 1 из файла 2, а затем заменить JOB_ID на строку 1 из файла3, а затем выбросить это в новый файл, для которого я хочу повторить процесс все строки в файлах 1, 2 и 3, поэтому для следующей записи будут заменены строки 2 из 3 файлов, затем для следующей записи будут заменены строки 3 из 3 файлов, а затем все строки 3 из файлов и и т. д. и т. д.
необработанный файл и ожидаемый результат ниже:
WORKSTATION#JOB_NAME
SCRIPTNAME "^TWSSCRIPTS^SCRIPT"
STREAMLOGON "^TWSUSER^"
-job JOB_NAME -user USER_ID -i JOB_ID
RECOVERY STOP
WORKSTATION#VBDSBQ_KFGP_SAPECC_PRGX_ACCNT_WKLY
SCRIPTNAME "^TWSSCRIPTS^SCRIPT"
STREAMLOGON "^TWSUSER^"
-job VBDSBQ_KFGP_SAPECC_PRGX_ACCNT_WKLY -user MCMILS03 -i 8970597895
RECOVERY STOP
это насколько я получил (опять же, я знаю его дерьмо)
file="/dir/dir/dir/file1"
while IFS= read -r line
do
cat dummy_file | sed "s/JOB_NAME/$file1/" | sed "s/JOB_ID/$file2/" | sed "s/USER_ID/$file3" #####this is where i get stuck as i dont know how to reference file2 and file3##### >>new_file.txt
done