Como obtenho apenas as linhas com as strings fornecidas por list_of_od_strings.txt file_with_strings_in_lines.xml?
Esta questão é semelhante a Selecionar linhas do arquivo de texto que têm ids listados em outro arquivo, na medida em que eu tenho um arquivo list_of_od_strings.txt com strings que existem em file_with_strings_in_lines.xml. As linhas com uma dessas strings devem ser impressas. A questão mencionada tem ids no primeiro arquivo que consistem em apenas uma palavra.
Meu caso aqui é diferente na medida em que em ids.csv ids são dados como uma combinação de duas a quatro strings seguidas como 'um dois 333 quatro'.
grep -wFf list_of_id_strings.txt file_with_strings_in_lines.xml
me dá uma saída, onde vejo as strings encontradas de list_of_id_strings.txt destacadas. No entanto, as linhas sem strings de list_of_id_strings.txt em file_with_strings_in_lines.xml também aparecem. Para dizer, vejo todo o list_of_id_strings.txt na saída.
Como obtenho apenas as linhas com as strings fornecidas por list_of_od_strings.txt file_with_strings_in_lines.xml?
Com base nos comentários, deduzimos que o problema era o complemento do Convence grep para produzir todas as linhas, não apenas aquelas com correspondências, ou seja, que
list_of_id_strings.txt
contém pelo menos uma string nula.A solução é remover qualquer string nula do arquivo id.