У меня есть требование grep значений из xml-файла в файле примера оболочки ниже: test.xml
<wtc-import>
<name>WTCImportedService-288-rap04</name>
<resource-name>CAC040F</resource-name>
<local-access-point>lap01</local-access-point>
<remote-access-point-list>rap04</remote-access-point-list>
<remote-name>CAC040F</remote-name>
</wtc-import>
<wtc-import>
<name>WTCImportedService-289-rap04</name>
<resource-name>CAD040F</resource-name>
<local-access-point>lap01</local-access-point>
<remote-access-point-list>rap04</remote-access-point-list>
<remote-name>CAD040F</remote-name>
</wtc-import>
<wtc-import>
<name>WTCImportedService-290-rap04</name>
<resource-name>CAE040F</resource-name>
<local-access-point>lap01</local-access-point>
<remote-access-point-list>rap04</remote-access-point-list>
<remote-name>CAE040F</remote-name>
</wtc-import>
<wtc-import>
<name>WTCImportedService-289-rap04</name>
<resource-name>CAD040F</resource-name>
<local-access-point>lap01</local-access-point>
<remote-access-point-list>rap04</remote-access-point-list>
<remote-name>CAD040F</remote-name>
</wtc-import>
Необходимо выполнить grep для всех значений, связанных с этим файлом, и, наконец, при наличии дублированного имени ресурсаприсутствует удалить дубликат из выходного файла
Выполненный вывод:
CAC040F
CAD040F
CAE040F
ресурс CAD040F является дубликатом, поэтому в ожидаемом выводе он только что появился один раз
Попытка:
grep 'resource-name' test.xml | awk -F">" '{print $2}' | awk -F"<" '{print $1}'
и это работает хорошо .. как насчет фильтрации дубликатов после этого?