Você estava quase lá:
shopt -s extglob # ← Only needed if you haven't enabled it yet rm ./app/download/!("test 1"|"test 4")
O !(…)
será expandido com o caminho completo para todos os arquivos, exceto os que estão em !(…)
. Como você prefixar os argumentos para rm
com o caminho ./app/download/
, nenhum outro arquivo superior a esse diretório será excluído.