あるテキストを別のテキストとマージし、あるフィールドが変更された後に新しいテキストとして印刷

あるテキストを別のテキストとマージし、あるフィールドが変更された後に新しいテキストとして印刷

Linuxを介してこの問題を処理する方法:

ファイル1:

1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 0, 1" --ver --timeads=10

ファイル2:

99
1000000
99282828
111

結果:

1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 99, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 1000000, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 99282828, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 111, 1" --ver --timeads=10

これは、file1にコマンドを含むファイルがあり、file2の数字をコピーしてコマンドを1行ずつ新しいファイルに貼り付け、それに続く数字を置き換える必要があることを意味します。SIZET

答え1

xargs+どうですかsed

$ xargs -I{} -a File2 sed 's/SIZET 0, 1/SIZET {}, 1/' File1
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 99, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 1000000, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 99282828, 1" --ver --timeads=10
1 -b 2 --guide=5 --drop=3 --errors-parse --win-flags="dirwin pc_hard_no,pc_hard_expiry_month,pc_hard_expiry_year,pc_ver with hardvr.type_portals_methods_file WHERE pc_hard_no > 99999999999999 VER pc_hard_expiry_date > '2017-10-31' VER pc_ver > 0 SIZET 111, 1" --ver --timeads=10

関連情報