Este é apenas um problema de classificação:
head -2 input.file; tail -n +3 input.file | sort -t '|' -k2,2n -k3,3 -k5,5
Isso significa: "Classifique pela coluna 2 numericamente. No caso de empate, classifique por coluna 3. No caso de empate, classifique por coluna 5.