file1 の各行を file2 の各行と比較します。

file1 の各行を file2 の各行と比較します。

2つのファイルがあります。

c1 ログ

D1W /u02/app/oracle/db/ggs/current/dirdat/fe
D2W /u02/app/oracle/db/ggs/current/dirdat/ff

c2ログ

E1W /u02/app/oracle/db/ggs/current/dirdat/fe
E2W /u02/app/oracle/db/ggs/current/dirdat/fe
E3W /u02/app/oracle/db/ggs/current/dirdat/fe
F1W /u02/app/oracle/db/ggs/current/dirdat/ff
F2W /u02/app/oracle/db/ggs/current/dirdat/ff
F3W /u02/app/oracle/db/ggs/current/dirdat/ff
F4W /u02/app/oracle/db/ggs/current/dirdat/ff

c1.logの各行の2番目の列とc2.logの各行の2番目の列を比較する必要があります。一致する場合は、出力を1行で印刷する必要があります。

D1W /u02/app/oracle/db/ggs/current/dirdat/fe    E1W /u02/app/oracle/db/ggs/current/dirdat/fe

また、出力は新しいファイルに書き込む必要があります。 c3.logを想定してください。

ありがとう、モーセ

ベストアンサー1

私はこれを行う単純なPythonスクリプトを書いた。

address1 = input("Enter first file address:\n")
address2 = input("Enter second file address:\n")

data1 = []
data2 = []
with open(address1) as file:
    data1 = file.read().split('\n')

with open(address2) as file:
    data2 = file.read().split('\n')

if data1[-1] == "": data1.pop()
if data2[-1] == "": data2.pop()

for i in data1:
    for j in data2:
        if i.split(' ')[1].strip() == j.split(' ')[1].strip():
            print(i + ' ' + j)

おすすめ記事