Enquanto escrevo a pergunta, vejo a resposta: dois passos.
$ yes no | unzip myarchive.zip # Unzip only things that don't exist on disk
$ unzip -f myarchive.zip # Unzip things that (now) exist on disk and are newer.
O comportamento que eu gostaria com unzip
é extrair todos os arquivos, sobrescrevendo quaisquer que sejam mais antigos do que aqueles no arquivo morto, sem tocar em nenhum que seja da mesma idade ou mais recente, e nunca solicitar.
As opções disponíveis parecem ser:
-o
: sobrescrever todos os arquivos, mesmo que tenham a mesma idade ou idade -f
: extrai apenas arquivos que existem no disco e são mais antigos. Existe uma maneira de obter esse comportamento?