Existe alguma maneira de descompactar para stdout no linux por ordem alfabética? Estou descompactando para um arquivo fifo e os arquivos estão saindo com defeito
2
O unzip
programa estará extraindo arquivos na ordem em que aparecem no arquivo morto. Se não houver um grande número de arquivos, você poderá criar uma lista de arquivos a serem extraídos, classificá-los e executar unzip
um loop para extrair cada um na ordem desejada.
Algo como (um script, é claro):
#!/bin/sh
FILE=$1
unzip -qq -l $1 | awk '{print $4; }' |sort |\
while :
do
read name
[ -z "$name" ] && break
unzip -p $1 "$name"
done
A -qq
opção para unzip
suprime o cabeçalho, permitindo awk
a impressão de apenas os nomes dos arquivos.