Как удалить строку из файла с разделителями трубы, основываясь на значении в определенном поле?

У меня есть файл с разделителями вертикальной чертой следующим образом:

968666|JOHN|M|DOB 145465|DAVID|M|NULL 898563|SAUL|NULL|DOB 968666|JOHN|F|NULL 

Как удалить строки, которые имеют NULL в 4-м столбце?

Ожидаемый результат

 968666|JOHN|M|DOB 898563|SAUL|NULL|DOB 

Пример Sed:

 sed '/\|.*\|.*\|NULL/d'  

Пример sed, когда NULL всегда находится в конце строки:

 sed '/NULL$/d'  
 awk -F"|" '{if ($4!~/NULL/) {print $0} }' file