Respostas:
De man zip:
zip -d foo foo/tom/junk foo/harry/\* \*.o
will remove the entry foo/tom/junk, all of the files that start with
foo/harry/, and all of the files that end with .o (in any path).
Se isso não ajudar, você pode fornecer alguns detalhes sobre os comandos que você tentou e a saída?
Se você deseja excluir todos os arquivos de um diretório específico, faça o seguinte:
zip --delete file.zip "assets/*"
Talvez isso possa ser feito com um script, mas na linha de comando, se você deseja excluir um diretório do arquivo zip, verifique se o diretório está vazio. Se o diretório não estiver vazio, primeiro exclua todos os arquivos do diretório. Então você pode excluir o diretório.