awk は 2 つのファイルを一致させ、2 番目のファイルの区切り文字 '_' を逆順に読み込みます。

awk は 2 つのファイルを一致させ、2 番目のファイルの区切り文字 '_' を逆順に読み込みます。

file1とfile2で共通の行を見つける必要があります。このコードでは、区切り文字が最初から計算されます。_file2で区切り記号 ''のある行を逆順に(最後に初めて)読みたいです。

awk -F'_' '
    FNR==NR {a[$1,$2,$3,$4]; next}
    ($11,$12,$13,$14) in a {print $0}
' file1 file2

ファイル1

01Aug2020_10_48_25
06Jun2020_01_11_02
21Jun2020_09_30_07
05Jul2020_21_53_41
27Aug2020_21_15_15
17Aug2020_18_56_49
10Jun2020_07_00_25
10Jun2020_15_24_20
26Jun2020_09_25_34
30Jul2020_07_17_04
27Jul2020_03_36_35
24Jul2020_18_05_34

ファイル2

/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/re_01Jan2020_11_58_40_B2_W1_x_90.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/08_August_2020/01_Aug/ESC_re_01Aug2020_10_48_25_B3_W1_x_270.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01January_2020/01_Jan/ESC_re_01Jan2020_11_58_40_B4_W1_x_180.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01January_2020/01_Jan/ESC_re_01Jan2020_11_58_40_B5_W1_x_0.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_07_36_B1_W1_x_0.00_Oz_0.00.mmts
/media/AGH/AGH_K_K/academi/P2020/06June_2020/21_Jun/ESC_re_21Jun2020_09_30_07_B2_W1_x_90.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_07_36_B3_W1_x_270.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_07_36_B4_W1_x_180.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01January_2020/01_Jan/ESC_re_01Jan2020_12_07_36_B5_W1_x_0.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_19_13_B1_W1_x_0.00_Oz_0.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_19_13_B2_W1_x_90.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01January_2020/01_Jan/ESC_re_01Jan2020_12_19_13_B3_W1_x_270.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01January_2020/01_Jan/ESC_re_01Jan2020_12_19_13_B4_W1_x_180.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_19_13_B5_W1_x_0.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_30_50_B1_W1_x_0.00_Oz_0.00.mmts
/media/AGH/AGH_K_K/academi/P2020/01_January_2020/01_Jan/ESC_re_01Jan2020_12_30_50_B2_W1_x_90.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/07July_2020/27_Jul/ESC_re_27Jul2020_03_36_35_B3_W1_x_270.00_Oz_10.00.mmts

ベストアンサー1

暗闇の中で撮影:使用を妨げる理由

grep -ffile1 file2
/media/AGH/AGH_K_K/academi/P2020/08_August_2020/01_Aug/ESC_re_01Aug2020_10_48_25_B3_W1_x_270.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/06June_2020/21_Jun/ESC_re_21Jun2020_09_30_07_B2_W1_x_90.00_Oz_10.00.mmts
/media/AGH/AGH_K_K/academi/P2020/07July_2020/27_Jul/ESC_re_27Jul2020_03_36_35_B3_W1_x_270.00_Oz_10.00.mmts

、のデータ構造がfile1例に示すように一意であり、file2の目的のターゲット部分文字列とのみ一致すると仮定しますか?

おすすめ記事